按照指定规则对输入的字符串进行处理。详细描述:第一步:将输入的两个字符串str1和str2进行前后合并。

while True:# 牛课网HJ30 字符串合并处理
    try:
        s = list(input().replace(" ", ""))  # 第一步:将输入的两个字符串str1和str2进行前后合并把空格去掉并且变成list
        s[::2] = sorted(s[::2])#
        s[1::2] = sorted(s[1::2])  # 第二步直接奇数位偶数位排序 只有变成list才能排对合并后的字符串进行排序,要求为:下标为奇数的字符和下标为偶数的字符分别从小到大排序。

        # 第三步对排序后的字符串中的'0'~'9'、'A'~'F'和'a'~'f'字符,需要进行转换操作。转换字符
        res = ""
        for i in s:
            if "0" <= i <= "9" or "a" <= i <= "f" or "A" <= i <= "F":
                b = bin(int(i, 16))[2:]  # 注意bin返回的有0b二进制的前缀
                # 不够四位要补0
                b = b.zfill(4)
                b = b[::-1]
                b = hex(int(b, 2))[2:].upper()#hex 是搞成16进制的带0X需去掉
                res += b
            else:
                res += i
        print(res)

    except:
        break

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值