由于我看不到你的确切行,所以很难给你一个完全符合你的要求的解决方案,但如果你想获取列表中所有非空字符串的元素,那么你可以这样做:
>>> l = ["ch", '', '', 'e', '', 'e', 'se']
>>> [var for var in l if var]
Out[4]: ['ch', 'e', 'e', 'se']
您还可以使用filter
with None
or bool
:
>>> filter(None, l)
Out[5]: ['ch', 'e', 'e', 'se']
>>> filter(bool, l)
Out[6]: ['ch', 'e', 'e', 'se']
如果您希望删除带有空字符串的列表,那么对于您的特定示例,您可以执行以下操作:
with open("text.txt", 'r') as file:
for line in file:
line = line.rstrip('\n' + '').split(':')
# If line is just empty
if line != ['']:
print line