2014-10-30 51 views
-1

一个文本文件包含以各行格式给出的文本行 00:00;“Title”; 00 我想要做的是将每行分开,然后再分开每行在;作为python列表元素的字符串操作

text = open('text.txt', encoding='UTF-8') 
lines = [x.strip() for x in text] 

现在我坚持,我不能使用:

separated = [x.split(';') for x in lines] 

因为x.split()不适用于列表元素。 如何在列表元素上执行操作? Cheers

+0

为什么不只是'lines = [line.split(';')for line in text]'? – 2014-10-30 08:34:12

+0

为什么不使用csv阅读器? – 2014-10-30 08:34:45

+0

仅仅是python的初学者。不过,感谢您提供更多的信息。 – 2014-10-30 09:22:28

回答

0
>>> import csv 
>>> list(csv.reader(lines, delimiter=';')) 
[['00:00', 'Title', '00'], ['00:00', 'Title', '00'], ['00:00', 'Title', '00']] 
+0

是的,这可以简化很多事情,谢谢。在csv中寻找解决方案并不容易,如果不知道究竟是什么时候寻找:) – 2014-10-30 09:23:27