Python列表使用append()时如何避免初始空白元素?
解决Python列表初始空白元素的问题
你的代码里有两个关键问题导致了初始空白元素,还存在一个潜在的未定义错误,直接改这两点就能解决:
问题分析
- 你把列表初始化成了
[" "],这直接给列表塞了一个空白字符串元素,这就是你看到的初始空白的来源 - 代码顺序错误:你先调用
my_list.append(),但此时my_list还没定义,运行时会触发NameError,估计你实际写的时候顺序搞反了
修正后的代码
# 先初始化空列表,不要加空白元素 my_list = [] # 处理第一个要添加的元素 add_item_to_list = input("Enter item to add to list :") my_list.append(add_item_to_list) another_item = input("add another item y/n ?") while another_item == "y": add_item_to_list = input("Enter item to add to list :") my_list.append(add_item_to_list) # 把询问是否继续的语句放在append之后,避免漏掉最后输入的元素 another_item = input("add another item y/n ?") print(my_list)
关键修改点
- 把列表初始化为空列表
[],彻底去掉初始的空白元素 - 调整代码顺序:先初始化列表,再执行第一次
append()操作,避免未定义变量的错误 - 调整循环内的语句顺序:先添加元素,再询问是否继续,逻辑更直观,也不会出现用户输入元素却没被添加的情况
内容的提问来源于stack exchange,提问作者Syed Hassan
相关产品推荐
相关产品推荐

