Python 列表推倒输出结果为None的问题,诚恳求问

list1 = []list2 = []list3 = []for i in range(0,3): if i < 5: print("第",i+1,"个数") x = float(input('请用户输入数值:')) list1.append(x)print("所有数据列表:",list1)list2 = [list2.append(list1[i]) for i in range(0,3) if float(list1[i]) > 0]list3 = [list3.append(list1[i]) for i in range(0,3) if float(list1[i]) < 0]#for i in range(0,3): # if float(list1[i]) > 0: # list2.append(list1[i])# elif float(list1[i]) < 0:# list3.append(list1[i])print("正数列表:",list2)print("负数列表:",list3)

# 这里修改为:
list2 = [list1[i] for i in range(0,3) if float(list1[i]) > 0]
list3 = [list1[i] for i in range(0,3) if float(list1[i]) < 0]

列表推导式中,无需调用append方法

温馨提示:答案为网友推荐,仅供参考
相似回答