a = []
for i in range(3):
a.append(input())
j = 0
for i in a:
if i % 10 != 7:
j = min(a)
print j
我需要指找到在列表中的最小正數,其十進制表示不與數字7結束這是保證該列表具有至少一個正元件,算法十進制表示不會以數字7結束。我試過了,但條件不起作用。例如:它說7 [9,8,7]中最小。尋找具有條件蟒最小值
a = []
for i in range(3):
a.append(input())
j = 0
for i in a:
if i % 10 != 7:
j = min(a)
print j
我需要指找到在列表中的最小正數,其十進制表示不與數字7結束這是保證該列表具有至少一個正元件,算法十進制表示不會以數字7結束。我試過了,但條件不起作用。例如:它說7 [9,8,7]中最小。尋找具有條件蟒最小值
您是總是測試的最小數目a
,雖然多次有未經過濾的號碼a
。不要將首先以7
結尾的數字添加到a
;你可能想在積極數字過濾過:或者
a = []
for i in range(3):
value = input()
if i % 10 != 7 and i >= 0:
a.append(value)
print min(a)
,在發電機表達式過濾掉值:
a = []
for i in range(3):
a.append(input())
print min(i for i in a if i % 10 != 7 and i >= 0)
也許表明他的代碼可以如何修正 - min(I,j) - 而不是 - min(a) - 但是,您的解決方案更好。 –
編輯: 好,我看錯你的代碼,你用剩下哪些我認爲更好。雖然它可以使用像這樣普通的部門工作。
if ((i/10) - int(i/10)) * 10 != 7:
還有,如果你不使用Python 3,你可能需要使用本作上述工作:
from __future__ import division
或鑄造用浮動()來浮動,但使它太凌亂了。
從他發佈的代碼片段中,我認爲可以安全地假設他沒有使用python 3.x ;-) –
你已經學過浮點數了嗎?應該考慮這些嗎?還要注意'min'給你最小的數字,而不是最小的_positive_一個。 – georg