我是编程新手,写字节时遇到问题。这是我写的:
file = open('filePath/input.train', 'wb')
for i in range(len(myList)):
file.write(bytes((myList[i]),'UTF-8'));
如果我在此处打印'i',则为629。
项目需要后缀“ .train”。为了检查它,我将其读取并写入txt文件:
file = open('filePath/input.train', 'rb')
content = file.read()
testFile = open('filePath/test.txt', 'wb')
testFile.write(content)
现在,问题是len(list)= 629,而我在test.txt文件中得到591行。后来给我带来了问题。
为什么会发生这种情况,我应该如何解决?
答案 0 :(得分:0)
首先,在打开和写入文件时,需要记住在写入后关闭文件。像这样。
file = open('filePath/input.train', 'wb')
for i in range(len(myList)):
file.write(bytes((myList[i]),'UTF-8'));
file.close()
第二秒,python代码不一定必须具有“;”
第三,file
是python的关键字,所以不要使用file
作为变量名。您可以使用f
或my_file
或任何人,但不要使用python的关键字。
第四,python有一个iterator
,使用iterator
胜过您的for i in range(len(xxx))
。
所有这些,您的代码可以看起来像这样。
f = open('filePath/input.train', 'wb')
for line in myList:
f.write(bytes(line, 'UTF-8'))
f.close()