4 回答

TA貢獻(xiàn)1884條經(jīng)驗 獲得超4個贊
關(guān)鍵是數(shù)字將以字符串形式從文件中出來,因此您必須先將它們轉(zhuǎn)換為浮點(diǎn)數(shù),然后才能添加它們。
你可以這樣做:
with open("data.txt", "r") as f:
for line in f:
x, y = line.split(',')
sum_ = float(x) + float(y)
print('x= {}, y= {}, sum= {}'.format(x, y, sum_))
我之所以這么稱呼它,sum_是因為有一個名為 的內(nèi)置函數(shù)sum()。

TA貢獻(xiàn)1858條經(jīng)驗 獲得超8個贊
也許這可以幫助:
with open("text.txt", "r") as f:
data = [tuple(i.strip().split(",")) for i in f.readlines()]
sums = [float(i[0])+float(i[1]) for i in data]
print(sums)
這里發(fā)生了什么?
我循環(huán)遍歷每一行,創(chuàng)建一個由逗號分隔的數(shù)字元組
我將元組的每個元素加在一起制作一個總和數(shù)組
如果您想要的話,這里有一個襯里,因為為什么不呢:^)
print([float(i[0])+float(i[1]) for i in [tuple(i.strip().split(",")) for i in open("text.txt", "r").readlines()]])

TA貢獻(xiàn)1854條經(jīng)驗 獲得超8個贊
只需越過線路并使用ast.literal_eval:
>>> import ast
>>> line = '5.2,4.4'
>>> x, y = ast.literal_eval(line)
>>> x, y, x+y
(5.2, 4.4, 9.600000000000001)

TA貢獻(xiàn)1794條經(jīng)驗 獲得超8個贊
在讀取文件后執(zhí)行任何操作之前將數(shù)字轉(zhuǎn)換為浮點(diǎn)數(shù)。你可以試試這個
f = open("data.txt", "r")
r = [x.split(",") for x in [line.rstrip('\n') for line in f]]
print(r)
#[['5.2', '4.4'], ['2.2', '7.2'],['3.6','6.9']]
results = [float(x[0]) + float(x[1]) for x in r]
print(results)
#[9.6, 9.4, 10.5]
添加回答
舉報