3 回答

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超8個(gè)贊
另一種解決方案可能是:
n = len(list1)
for i in range(0,n):
x = (list1[i].split())
if not x: # skip if line is empty
continue
print(max(x))

TA貢獻(xiàn)2051條經(jīng)驗(yàn) 獲得超10個(gè)贊
錯(cuò)誤是什么?
嘗試這個(gè):
for i in list1:
print(max(i.strip())
沒有空行。

TA貢獻(xiàn)1775條經(jīng)驗(yàn) 獲得超11個(gè)贊
您的代碼有一些問題:
該
max()
函數(shù)使用單個(gè)字符串參數(shù)('100 900'
例如字符串)調(diào)用,但需要兩個(gè)值。line.split()
為此目的使用。我猜字符串值應(yīng)該
float
在評估之前轉(zhuǎn)換為max()
.你應(yīng)該處理空行。
您應(yīng)該在閱讀后關(guān)閉文件。
此代碼應(yīng)解決以下問題:
with open('numbers.txt', 'r') as f:
lines = f.readlines()
for line in lines:
if line.strip() == '':
continue
n1, n2 = line.split()
max_value = max(float(n1), float(n2))
print(max_value)
該代碼段可以縮寫,但我只是出于教學(xué)目的添加了額外的行。
添加回答
舉報(bào)