我有一个包含单词和数字列表的文件。我想要做的是创建一个介于 0 和不包含在该文件中的数字列表。
我尝试了以下方法,但没有成功:
#!/usr/bin/python
import sys
PATH_TO_FILE = "C:\\Path\\To\\My\\File"
file = open( PATH_TO_FILE, "r")
open_numbers = list(range(0,10500))
used_numbers = []
for lines in file.readlines():
lines = lines.replace(',', '')
number = [int(s) for s in lines.split() if s.isdigit()]
print number
if number in open_numbers:
open_numbers.remove(number)
print lines
print number
print open_numbers
我的列表仅包含最大范围,而不删除数字
该文件是 C 文件的宏列表。参数使用唯一值,我想找出我仍然可以使用哪些值 示例数据:
MACRO(PARAM1, PARAM2, VALUE, PARAM) //ie MACRO(somefunc, "string id", 200, "string")
...(20k file)
最佳答案
number = [int(s) for s in lines.split() if s.isdigit()]
生成一个数字列表...例如 [2, 7, 8]。 open_numbers.remove(number) 正在尝试从列表中删除列表,这不是预期的影响。相反
numbers = [int(s) for s in lines.split() if s.isdigit()]
for number in numbers:
if number in open_numbers: ...
关于python - 使用 Python 创建文件中存在的数字列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31731735/