使用 pickle 函数是否是将整数写入文本文件的最快、最可靠的方法?
这是我到目前为止的语法:
import pickle
pickle.dump(obj, file)
如果有更强大的替代方案,请随时告诉我。
我的用例是编写用户输入:
n=int(input("Enter a number: "))
- 是的,人类需要阅读它并可能对其进行编辑
- 文件中将有 10 个数字
- Python 可能需要稍后再读回它。
使用 pickle 函数是否是将整数写入文本文件的最快、最可靠的方法?
这是我到目前为止的语法:
import pickle
pickle.dump(obj, file)
如果有更强大的替代方案,请随时告诉我。
我的用例是编写用户输入:
n=int(input("Enter a number: "))
我认为这样做更简单:
number = 1337
with open('filename.txt', 'w') as f:
f.write('%d' % number)
但这实际上取决于您的用例。
result = 1
f = open('output1.txt','w') # w : writing mode / r : reading mode / a : appending mode
f.write('{}'.format(result))
f.close()
f = open('output1.txt', 'r')
input1 = f.readline()
f.close()
print(input1)
使用 python 2,您还可以执行以下操作:
number = 1337
with open('filename.txt', 'w') as f:
print >>f, number
当我不需要格式化时,我个人会使用它。
下面会打开一段时间,并在其上附加以下数字。
def writeNums(*args):
with open('f.txt','a') as f:
f.write('\n'.join([str(n) for n in args])+'\n')
writeNums(input("Enter a numer:"))
我刚刚遇到了类似的问题。我使用了一种简单的方法,将整数保存在变量中,并将变量作为字符串写入文件。如果您需要添加更多变量,您始终可以使用“a+”而不是“w”来追加而不是写入。
f = open("sample.txt", "w")
integer = 10
f.write(str(integer))
f.close()
稍后您可以使用 float 读取文件,并且不会抛出错误。