题解 | #字符串合并处理#
字符串合并处理
https://www.nowcoder.com/practice/d3d8e23870584782b3dd48f26cb39c8f
s = list("".join(input().split())) # 将空格去掉 完成第一步
s[::2] = sorted(s[::2]) # 偶数下标。奇偶位置对应排序 完成第二步
s[1::2] = sorted(s[1::2]) # 奇数下标
for i in s: # 字符转换 第三步
try:
b = bin(int(i, 16))[2:] # 十六进制转换为二进制
b = b.zfill(4)[::-1] # 字符串补零倒序
h = hex(int(b, 2))[2:].upper() # 二进制转换为十六进制,并大写
print(h, end="")
except: # 无法转换为十六进制的字符在int(i, 16)这一步会出错,此时跳出try执行except的内容
print(i, end="")
int(i, 16)表示先把 i 看作十六进制符号,然后int()转换成十进制对应数字
bin():十进制转换为二进制,0b**
hex():十进制转换为十六进制,0x**
查看13道真题和解析
