我有一个文件,它需要表格的模糊形式。换行(\r\n
)不同的行和标签(\t
)在那里有一个以上的将字符串与Python中的文件中的数据匹配
我已经打开了文件,然后由线读取它行成像这样的列表行单独列:
file = open('data.txt')
table = file.readlines()
我现在试图从文件中删除某些行(从列表中的项目),这是不相关的(列标题等)。我的尝试是这样的:
for i in table:
if table[i] == "Tue":
del(table[i])
但既不"Tue"
不"Tue\r\n"
与条件匹配。 我查过记事本++和Tue\r\n
这个文件就行了。
我哪里出错了?
只是''Tue \ n“'怎么样?同样'对于我在表中'实际上使'i'成为表格的一行,所以你不想用'i'重新索引。无论如何,最好的想法是询问'Tue'是否在':'行中:'表中的行:...如果行中有“Tue”。对于例如'星期二'中的'Tue'返回'True'。 –
列表中的每个项目都是完整的一行。所以,如果你有如果table [i] ==“Tue”,你正在检查的是如果整行包含一个单词和该单词是星期二。你不是简单地检查单词Tue是否存在于该行的某处。在这种情况下最好使用正则表达式或类似的东西:if table [i]中的'Tue'。 –
我不明白,你期望什么? “'Tue'!=”Tue \ r \ n“'......,此外,正如答案所指出的那样,您错误地使用了”for-loop“。最后,*在迭代时不要从列表中删除*(除非你非常小心......) –