def all_gt(nums, n):
i = []
for c in nums:
if c > n:
i += c
return i
這是我使用的代碼,'i'應該以大於n的數字返回值。 但我的支架內沒有任何東西返回。例如,Python - 返回一個比另一個更大的值?
all_gt([1,2,3,4], 2) => [3,4]
任何人都知道如何解決? 謝謝
def all_gt(nums, n):
i = []
for c in nums:
if c > n:
i += c
return i
這是我使用的代碼,'i'應該以大於n的數字返回值。 但我的支架內沒有任何東西返回。例如,Python - 返回一個比另一個更大的值?
all_gt([1,2,3,4], 2) => [3,4]
任何人都知道如何解決? 謝謝
您聲明i
爲列表,所以您需要append
而不是添加。在地方追加的
i += [c]
:
def all_gt(nums, n):
i = []
for c in nums:
if c > n:
i.append(c) ## <----- note this
return i
或者,你可以這樣做。
謝謝!它完美地工作。 – Kevvv 2012-08-17 03:32:45
超出您的返回語句,以便它不作爲循環的一部分執行。
通常的做法是用這樣的列表理解'i = [c for c in nums if c> n]' – 2012-08-17 03:45:57