我們有一個包含 2 個整數 a 和 b 的輸入文本檔案。計算剛剛輸入的 2 個數字并將總和的值列印到輸出文本檔案中。這是我迄今為止嘗試過的:
x= open ("input.txt", "r")
Sum=[]
z = x.readlines()
for i in z:
if i.isdigit():
Sum = (z)
x.close()
y= open ("output.txt", "w")
y.write(str(Sum))
y.close()
uj5u.com熱心網友回復:
您從輸入檔案中讀取的行是字串,因此您需要將它們轉換為整數。此外,每行末尾都會有一個換行符 '\n',在您成功將每一行轉換為 int 之前,需要將其洗掉。
您的代碼示例還有其他幾個問題。Sum 是一個串列,但您不是要從 input.txt 中添加每個 int 嗎?也不if i.isdigit()縮進。試試看,但可以用 except 代替。
x = open("input.txt", "r")
Sum = 0
z = x.readlines()
for i in z:
try:
Sum = int(i.strip())
except ValueError:
pass
x.close()
y= open ("output.txt", "w")
y.write(str(Sum))
y.close()
uj5u.com熱心網友回復:
您可以使用該eval()功能使其更容易...
with open('output.txt', 'w') as out:
with open('input.txt', 'r') as inp:
out.write(str(eval(inp.read())))
input.txt:
1 1
output.txt
2
uj5u.com熱心網友回復:
您還可以使用匯入功能將此代碼作為模塊匯入到另一個檔案中。在原始代碼檔案中,您可以使用代碼將在其下的函式。然后,每當您在輸出檔案中呼叫該函式時,您都會得到輸出。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/462183.html
標籤:Python python-3.x python-2.7
上一篇:動態值上的字典keyError
