【发布时间】:2016-08-08 09:23:19
【问题描述】:
python 新手。我正在测试文件,并试图将一个数字(作为原始输入)写入文件。然后我想要一个我制作的函数,将该数字作为输入参数并用它执行一个方程。
但由于某种原因,在写入文件时会弹出一个奇怪的字符。当我试图复制粘贴它来查找它时,它只是复制为这个奇怪的数字块或一个空白区域。 weird character in notepad
到目前为止,这是我的代码:
def function(x):
y = x + 1
return y
Input = raw_input('Number?')
with open('in_test.txt','w+') as inFile_test:
inFile_test.write(Input)
lines = inFile_test.readline()
lines_int = [int(x) for x in lines.split()]
print str(lines_int)
f_test = function(lines_int)
print str(f_test)
我还尝试将文件格式更改为 r+,检查记事本 (ANSI) 中的编码类型,并查找出现的错误。
lines_int = [int(x) for x in lines.split()]
ValueError: invalid literal for int() with base 10: '\x02'
我假设错误是由奇怪的字符引起的,但我不确定是什么导致了奇怪的字符。
【问题讨论】:
-
为什么不用UTF编码?
-
尝试在初始化
lines_int之前添加lines.encode('utf-8')
标签: python python-2.7 file character file-writing