我有一个包含单词和数字列表的文件。我想要做的是创建一个介于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)
答案 0 :(得分:1)
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: ...