Text .txt文件在readlines()下运行异常

Text .txt文件在readlines()下运行异常,text,python-2.7,textedit,readlines,Text,Python 2.7,Textedit,Readlines,文件的内容如下所示: 1/15/13,930,1441.5 1/15/13,1000,1442.75 1/15/13,1030,1444 我运行: the_txt_file = open('/txt_file') 然后我跑: the_txt_file_as_a_list = the_txt_file.readlines() print the_txt_file_as_a_list 然后我跑: the_txt_file_as_a_list = the_txt_file.readl

文件的内容如下所示:

1/15/13,930,1441.5
1/15/13,1000,1442.75
1/15/13,1030,1444
我运行:

the_txt_file = open('/txt_file')   
然后我跑:

the_txt_file_as_a_list =  the_txt_file.readlines()
print the_txt_file_as_a_list
然后我跑:

the_txt_file_as_a_list =  the_txt_file.readlines()
print the_txt_file_as_a_list
我明白了:

['1/15/13,930,1441.5\r1/15/13,1000,1442.75\r1/15/13,1030,1444\r1/']
但我期待的是:

['1/15/13,930,1441.5\n','15/13,1000,1442.75\n','15/13,1030,1444\n']

这种情况经常发生在我身上,发生了什么事?

我假设您或此数据文件的原始创建者在Mac上。似乎您希望它是一个简单的“\n”行结尾,但受原始编辑器系统默认行结尾的影响(很可能)

一个简单的解决方法是使用
rU
选项调用
open(…)
,如下所示:

the_txt_file=open('/txt_file','rU')

这确保文件以只读方式打开,并在读取特定文件时使用通用换行符支持


祝你好运

所以问题似乎与我的mac电脑与.txt文件的交互方式有关

此问题已通过交换解决:

the_txt_file = open('/txt_file')   
与:

“rU”称为“通用读线”。在“rU”模式下打开文件就是在通用读线模式下打开文件。运行时:

the_txt_file_as_a_list =  the_txt_file.readlines()
然后:

print the_txt_file_as_a_list
我的输出来自:

['1/15/13,930,1441.5\r1/15/13,1000,1442.75\r1/15/13,1030,1444\r1/']
致:

后来,我可以通过以下方式分别打印每个项目:

for item in the_txt_file_as_a_list:
    print item
输出如下所示:

1/15/13,930,1441.5

1/15/13,1000,1442.75

1/15/13,1030,1444

$xxd/txt_file查看文件是否有问题,例如文件有回车符(\r)但没有换行符(\n)。如何解决此问题?使用“rU”模式打开文件so:the_-txt_file=open('/txt_file',rU)?这非常有效。我分别做了两件事来测试它:1。打印_txt_文件2。对于_txt_文件中的项目:打印项目