2017-09-16 53 views
0

當我嘗試寫到另一個文件,我得到一個錯誤說:我如何寫一個int到文件

TypeError: write() argument must be str, not int 

我如何寫一個int到一個文件?下面是我當前的代碼

infile = open("milk.in","r").readlines() 
outfile = open("milk.out","w") 

a, b = infile[0].split() 
a, b = int(a), int(b) 

sum = a + b 

outfile.write(sum) 
outfile.close() 

回答

1

write()只需string作爲參數。將sum轉換爲string

infile = open("milk.in","r").readlines() 
outfile = open("milk.out","w") 

a, b = infile[0].split() 
a, b = int(a), int(b) 

sum = a + b 

outfile.write(str(sum)) 
outfile.close() 

但是,您應該閱讀file I/O

0

你不能直接寫一個整數到一個文件。您必須將int轉換爲string使用str功能,然後將其寫入文件

0

是的,你不能簡單地寫入文件整數,它會以字符串形式被寫入。

但是,如果你要存儲的值,因爲它是(在你的情況,這是一個整數),後來想恢復它,那麼你可以使用Python的泡菜模塊

import pickle 
pickle.dump()  
pickle.load() 

所以給泡菜試試讓你的值以你想要它們存儲在文件中的格式存儲

http://effbot.org/librarybook/pickle.htm [pickle introduction]

相關問題