In [8]: series = []
In [9]: for token in "1-4, 6, 7-10".split(","):
...: token = token.strip()
...: if token.isnumeric():
...: series.append(int(token))
...: else:
...: s, e = tuple(map(int, token.split("-")))
...: # splits "4-6" and converts to int
...: series.extend(list(range(s, e+1)))
...:
In [10]: series
Out[10]: [1, 2, 3, 4, 6, 7, 8, 9, 10]
s = "3-12, 7, 1, 3-6"
d = []
for l in s.split(', '):
if '-' in l:
q = l.split('-')
for n in range(int(q[0]),int(q[1])+1):
d.append(n)
else:
d.append(int(l))
print(d)
您有一个列表,可以是int或range,
您可以分别迭代和处理它们
像这样:
输出:
您可以首先拆分
','
个字符。如果找到单个值,只需将其转换为int
。如果找到破折号,请将其转换为整数范围相关问题 更多 >
编程相关推荐