2024-10-01 07:43:04 发布
网友
我需要帮助找出如何把数字移到字符串的末尾。你知道吗
例如,'y0b3'应该变成'yb03'。你知道吗
'y0b3'
'yb03'
既然你标记了发电机。。。您可以为此任务编写以下生成器:
def digits_last(string): hold = [] for c in string: if c.isdigit(): hold.append(c) else: yield c yield from hold
演示:
>>> ''.join(digits_last('y0b3y0b3u0b2')) >>> 'ybybub030302'
你可以这样做:
def group(string): digits = [] non_digits = [] for c in string: if c.isdigit(): digits.append(c) else: non_digits.append(c) return ''.join(non_digits) + ''.join(digits) result = group('y0b3') print(result)
输出
yb03
其思想是将每个字符分组为数字和non_digits,然后将非数字放在第一位,digits放在最后。要连接digits和non_digits,请使用join。你知道吗
non_digits
digits
既然你标记了发电机。。。您可以为此任务编写以下生成器:
演示:
你可以这样做:
输出
其思想是将每个字符分组为数字和
non_digits
,然后将非数字放在第一位,digits
放在最后。要连接digits
和non_digits
,请使用join。你知道吗相关问题 更多 >
编程相关推荐