我编写了一个完美无缺的程序,除了我收到的反馈是“你把表达分配给了什么”。这是代码:
l = input('Please insert the numbers: ')
numbers = [int(i) for i in l.split(',')]
lower_limit = int(input('Please insert the lower limit: '))
upper_limit = int(input('Please insert the uppper limit: '))
boolean_list = []
for i in numbers:
boolean_list.append(True) if (i >= lower_limit and i <= upper_limit ) else
boolean_list.append(False)
print(boolean_list)
我可以先初始化boolean_list
,然后为其分配逻辑值,但我相信它会比我的第一种方法慢得多(如上所述)。我对编程完全不熟悉所以我不清楚我做错了什么。
答案 0 :(得分:2)
避免此问题的最佳选择是通过使用列表解析摆脱for循环:
boolean_list = [i >= lower_limit and i <= upper_limit for i in numbers]
这将使用list comprehensions,这是一种更有效的构建迭代器的方法。