【发布时间】:2021-11-24 21:36:46
【问题描述】:
我有一个主要由数字组成的文本文件,如下所示:
3 011236547892X
9 02321489764 Q
4 031246547873B
我想将以下每个(空格 5 到 14(从零开始计数))提取到一个列表中:
1236547892
321489764
1246547873
(请注意:每个“数字”长度为 10 个“字符” - 第二行末尾有一个空格。)
然后对每个列表的内容进行分析。
我有无数个版本,但我认为我最接近:
with open('k_d_m.txt') as f:
for line in f:
range = line.split()
num_lst = [x for x in range(3,10)]
print(num_lst)
但是我有:TypeError: 'list' object is not callable
什么是最好的前进方式?
我想用 num_lst 做的事情如下:
num_lst = list(map(int, str(num)))
打印(num_lst)
第 n = 2
odd_total = sum(num_lst[0::nth]) even_total = sum(num_lst[1::nth]) 打印(奇数) 打印(偶数)
如果odd_total - even_total == 0 或odd_total - even_total == 11: print("号码没问题") 别的: print("号码不对")
【问题讨论】:
-
“空格 5 到 14”直接转换为
line[5:15]。 -
这能回答你的问题吗? Understanding slice notation
标签: python text split list-comprehension