将字符串中的所有数字移到末尾

时间:2018-11-03 12:27:23

标签: python

我需要帮助弄清楚如何将数字移到字符串的末尾。

例如,'y0b3'应该变成'yb03'

2 个答案:

答案 0 :(得分:2)

自从标记了生成器之后,您可以为该任务编写以下生成器:

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'

答案 1 :(得分:1)

您可以执行以下操作:

yb03

输出

non_digits

想法是将每个字符分组为数字,然后将digits放在非数字前面,将digits放在最后。要同时加入non_digitsunresolved attribute reference 'get_opposite_node' for class 'list',请使用join