题解 | #字符串合并处理# 进制转换函数

字符串合并处理

https://www.nowcoder.com/practice/d3d8e23870584782b3dd48f26cb39c8f

思路:就是进制转换这块几个函数不熟,记住就好了,不行就百度
import sys

for line in sys.stdin:
    # 第一步,合并字符串转数组
    line = list(line[:-1].replace(" ", ""))
    # 第二部,奇偶位排序
    line[::2] = sorted(line[::2])
    line[1::2] = sorted(line[1::2])
    # 第三步,十进制转十六进制转二进制,然后倒序
    res=""
    for i in line:
        # 转换操作限制在a~fA~F0~9范围内
        if "a" <= i <= "f" or "A" <= i <= "F" or "0" <= i <= "9":
            """
            int(i,16)十进制转十六进制
            bin(int(i,16))[2:] 十六进制转二进制,去掉开头进制标记符倒叙
            bin(int(i, 16))[2:].rjust(4, "0")[::-1]
                去掉进制符后如果不够4位填充0文本向右对齐(字符串左侧填充)
            hex(int(i,2)) 最后二进制再转十六进制
            """
            res+=hex(int(bin(int(i, 16))[2:].
                rjust(4, "0")[::-1],2))[2:].upper()
        else: res+=i

    print(res)


华为机试(python3) 文章被收录于专栏

少壮不努力,老大勤刷题

全部评论

相关推荐

10-11 17:45
门头沟学院 Java
走吗:别怕 我以前也是这么认为 虽然一面就挂 但是颇有收获!
点赞 评论 收藏
分享
菜菜咪:1. 可以使用简历网站的模版,美观度会更好一点 2. 邮箱可以重新申请一个,或者用qq邮箱的别名,部分hr可能会不喜欢数字邮箱 3. 项目经历最好分点描述,类似的项目很多,可以参考一下别人怎么写的 4. 自我评价可加可不加,技术岗更看重技术。最后,加油,优秀士兵
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务