3 回答
TA贡献1873条经验 获得超9个赞
A.sort()对 的内容进行排序A,但返回值为None。
>>> A = [5, 3, 6, 4]
>>> return_value = A.sort()
>>> print(A)
[3, 4, 5, 6]
>>> print(return_value)
None
如果您需要打印排序列表A,那么您应该使用
print(sorted(A))
代替
print(A.sort())
TA贡献1795条经验 获得超7个赞
在块中定义的变量仅在该块中可用。无法在块外访问它。
def solution(A):
for num in A:
if(-1000000 <= num <= 1000000):
check = True
else:
check = False
break
return check
因此,您无法在解决方案功能之外访问此处的检查值。因为你的函数已经返回检查。简单地
check = solution(A)
在函数之外保存您的支票。
print(A.sort())
A.sort() 进行就地排序,它返回 None,使用 print(sorted(A)) 或执行 A.sort() 然后执行 print(A)
TA贡献1824条经验 获得超6个赞
正如评论中指出的那样,您的排序语法不正确并且没有返回任何内容。此外,您还使用了全局变量,这违背了使用函数(模块化)的目的。下面的代码更加高效和可读。
#Check if number 'A' is within range
A = [10, 3, 600000000, 3, 2]
def solution(A):
for num in A:
if(num > 1000000 or num < -1000000):
return False
return True
if(solution(A) == True):
print(sorted(A)) # Fixed sort syntax
else:
print("Out of range!")
输出:
替代输入 [10,3,3,-3]:
添加回答
举报