这是一串数字"72102450111111090"我需要4个子字符串:721、245、111111和9,并将它们逐一求和,即第一子串的和为:10、第二道:11人,第三名:6人,以此类推
"72102450111111090"
lskq00tm1#
下面是解决方案
all_sums = [] sum = 0 for i in x: if i == "0": all_sums.append(sum) sum = 0 else: sum += int(i) print(all_sums)
产出
[10, 11, 6, 9]
cuxqih212#
在字符“0”处拆分字符串并过滤掉空子字符串。在解析中,将子字符串的位数相加,然后使用map将其分别转换为整数。
S = "72102450111111090" sums = [sum(map(int,ss)) for ss in filter(bool,S.split("0"))] print(sums) # [10, 11, 6, 9]
2条答案
按热度按时间lskq00tm1#
下面是解决方案
产出
cuxqih212#
在字符“0”处拆分字符串并过滤掉空子字符串。在解析中,将子字符串的位数相加,然后使用map将其分别转换为整数。