Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/python-3.x/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Parsing 列表项的意外结果_Parsing_Python 3.x - Fatal编程技术网

Parsing 列表项的意外结果

Parsing 列表项的意外结果,parsing,python-3.x,Parsing,Python 3.x,运行此: fname=raw\u输入(“输入文件名:”) 计数=0 开放(fname) 对于fname中的行: line=line.rstrip() if line.startswith('From:'):继续 如果line.startswith('From'): 计数=计数+1 words=line.split() 印刷文字[1] (通过带有python 3.x的Mac终端) 我得到: 输入文件名:romeo.txt “如果”有一个“\x00a\x00a\x00a\x000\\x000\\x

运行此:

fname=raw\u输入(“输入文件名:”)
计数=0
开放(fname)
对于fname中的行:
line=line.rstrip()
if line.startswith('From:'):继续
如果line.startswith('From'):
计数=计数+1
words=line.split()
印刷文字[1]
(通过带有python 3.x的Mac终端)

我得到:

输入文件名:romeo.txt
“如果”有一个“\x00a\x00a\x00a\x000\\x000\\x00a\x00a\x00l\x00a\x00a\\x000\\\x00J\x00J\x00J\x00J\x00J\x00u\\x000\\x000\000\x000\\\\\\x000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0,“如果”有一个“作为作为作为作为作为“中国的一个”的“中国,如果如果如果“中国中国的“\x000\x000\x000 0 0 0 0 0 0 0\\\\\\\\\\\x000 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\\\\\\\\\\\00J\\00J\x00J\x00J\x00J\\\\\“\x00g\x00r\x00i\x00e\x00f\x00”、“\x00i\x00s\x00”、“\x00k\x00i\x00l\x00l\x00”、“\x00l\x00i\x00g\x00h\x00t”\“00 00,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,A\x00t\x00'、'\x00w\x00i\x00n\x00d\x00o\x00w\x00'、'\x00w\x00i\x00t\x00h\x00'、'\x00y\x00o\x00n\x00d\x00e\x00r\x00',A\x00r\x00i\x00s\x00e\x00',I\x00t\x00',W\x00h\x00o\x00','\xff\xfeB\x00u\x00t\x00']

我会找出这个练习,但我不知道或不理解这个结果,也不理解它发生的原因。

它看起来像一个UTF-16文件。尝试使用
open(fname,encoding='UTF-16')
打开。您不是在迭代文件的内容,而是在迭代
fname
的内容。。。(使用
open(fname)
并不会神奇地使
fname
使用文件…)并且您第二个
if
将永远不会执行,因为共享相同条件的前面的
if
仍然会立即继续执行。。。你到底想做什么?你是想数一数以“From”而不是“From:”开头的行,然后把“From”行的单词分开?还是只是想学习如何打开一个文件?