问题是从数字中删除负数。
当执行
def main(): numbers = input("输入一组数字:") remove_negs(numbers)
当执行
remove_negs([1, 2, 3, -3, 6, -1, -3, 1])
时,结果为:[1, 2, 3, 6, -3, 1]
。结果应该是[1, 2, 3, 6, 3, 1]
。问题在于如果有两个负数连续出现(例如-1,-3
),则第二个数字将不会被删除。def main(): numbers = input("输入一组数字:") remove_negs(numbers)
def remove_negs(num_list):
'''Remove the negative numbers from the list num_list.'''
for item in num_list:
if item < 0:
num_list.remove(item)
print num_list
main()