gpt4 book ai didi

python - 每第 n 个字符向后迭代拆分 Python 字符串

转载 作者:行者123 更新时间:2023-12-04 02:28:00 27 4
gpt4 key购买 nike

我正在开发一个将数字转换为二进制的程序,反之亦然。当用户输入二进制字符串(例如 1011110110)时,它会转换为十进制并打印出来。我还想打印出用户输入的字符串,如 10 1111 0110

我试过了

print("Binary \t=\t " + ' '.join(binaryString[i:i+4] for i in range(0, len(binaryString), 4)))

这将打印为 1011 1101 10。我希望空格从字符串的末尾开始向前工作,如 10 1111 0110

最佳答案

您可以使用模块 % 运算符来了解您有多少个“溢出”数字,然后每 4 个对余数进行一次分割:

def  neat_print(s):
ls = len(s)
start = ls % 4
rv, s = s[:start], s[start:]
return ' '.join([rv] + [s[i:i+4] for i in range(0,ls-start,4)]).strip()

for k in ["1010101010"[:end] for end in range(2,10)]:
print(k, "->", neat_print(k))

输出:

10 -> 10
101 -> 101
1010 -> 1010
10101 -> 1 0101
101010 -> 10 1010
1010101 -> 101 0101
10101010 -> 1010 1010
101010101 -> 1 0101 0101

关于python - 每第 n 个字符向后迭代拆分 Python 字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66124687/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com