将一串数字拆分成一个列表python

cla*_*iew 0 python string list

我有一个包含随机数量的数字的字符串,这些数字可以是 1、2、3 等,但它们甚至可以是 100、20、25...所以如果我正在搜索 14,我会找到144 中的 14(如果字符串包含它)。我必须将它们分成整数列表。这是我尝试过的:

def to_list(string):
    result_list = []
    for idx in range(len(string)):
      if string[idx] != "0":
        zeros = 0
        for j in string[idx + 1:len(string)]:
          if j == "0":
            zeros += 1
          else:
            result_list.append(string[idx] + "0" * zeros)
            break

    result_list.append(string[-1])
    return result_list
Run Code Online (Sandbox Code Playgroud)

jvx*_*8ss 5

你可以使用正则表达式

import re
a = "1001010050101"
a = list(map(int, re.findall(r"[1-9]+0*", a)))
print(a)

Run Code Online (Sandbox Code Playgroud)