我正在colab python中的转换器文件上工作。当在特定位置创建文本文件时,我需要它写下0和更改行,尽管它没有。
请帮忙,这是我的代码:
f=open('dimac_outfs1.txt')
with open('dimac_outfs1.txt','a') as writefile:
for i in range(len(my_array)):
if my_array[i]!=0:
writefile.write(str(my_array[i]))
else:
writefile.write(str(str(my_array[i] + 'n'))
在
else:
writefile.write(str(my_array[i]))
writefile.write("n")
没有帮助。
my_array是一个numpy。ndarray女巫包括:数组([' 1 ', ' ', '- 2,…, ' ', '0', ' '], dtype='<U21'),它有正负整数,也有零和空格。>
如果我理解正确的话,您的命令不起作用。我想如果你检查调试器,你会注意到有一个EOL错误:
else:
writefile.write(str(str(my_array[i] + 'n'))
你少了一个括号。否则,
with open(<file>,'a') as f:
f.write(str(i)+'n')
工作,所以我猜EOL错误应该是一个。
还有懒我爱的提示:
我可以建议你在你的代码开头加上一个'n',如果你追加到文件。
确保您在正确的路径中,如果需要,请输入您附加到的文件的绝对路径。
Python非常擅长简化一切,你也可以这样使用for循环:
for elem in list :
elem将在每次循环中为list[0], list[1]等。
希望我回答了你的问题😄