关于文件操作的问题
encode = []with open('test.txt', 'r') as f:
my_list = f.read().split('=')
for each_char in my_list:
if each_char == 'Hello':
encode.append('Hello')
print(encode)
代码如上,首先定义一个空列表,然后读取文件->循环->添加元素,但结果却是即使读取的文件中有‘Hello’这个元素,最后也不会被添加至encod列表中,这是什么原因,求指教! 本帖最后由 txxcat 于 2020-4-8 00:19 编辑
你用read读取了所有的内容用split分割,这个应该不是你的需求吧?一般情况是逐行读取,逐行处理(鉴于楼下说的\n的情况,加入了一个分片[:5]就可以了):
encode = []
with open('test.txt', 'r') as f:
for line in f:
my_list = line.split('=')
for each_char in my_list:
if each_char[:5] == 'Hello':
encode.append('Hello')
print(encode) 有没有要根据你的文件来。
文件读取后的 \n 换行符你都没有处理。怎么可能相同。
Hello\n 不会== Hello ba21 发表于 2020-4-7 23:50
有没有要根据你的文件来。
文件读取后的 \n 换行符你都没有处理。怎么可能相同。
Hello\n 不会== Hello
能否更改一下代码,感激不尽 yjptx121 发表于 2020-4-8 22:38
能否更改一下代码,感激不尽
>>> a="abc"
>>> a=a[:-1]
>>> a
'ab'
这就不完事了。 ba21 发表于 2020-4-9 14:17
>>> a="abc"
>>> a=a[:-1]
>>> a
谢谢,我再仔细想想 yjptx121 发表于 2020-4-9 22:36
谢谢,我再仔细想想
脑子这么不好使?少打一个字,少说一句都理解不了?多动动脑
>>> a="abc\n"
>>> a=a[:-1]
>>> a
'abc' ba21 发表于 2020-4-9 23:15
脑子这么不好使?少打一个字,少说一句都理解不了?多动动脑
>>> a="abc\n"
>>> a=a[:-1]
年级大了,学的慢,如果你不乐意,就别回复,谢谢
页:
[1]