我希望我的代码在用户逐一键入时将新元素不断添加到列表中但是代码没有做到

问题描述

这是我的代码。我希望它在用户键入元素时继续向列表中添加元素。

**while True:
    _list = []
    new_element = input('typehere:')
    _list.append(new_element)
    print(_list)**

以下是输出

typehere:**element_1**
['element_1']
typehere:**element_2**
['element_2']

我想要:

typehere:element_1
['element_1']
typehere:element_2
[ 'element_1','element_2' ]

解决方法

在循环外初始化list

_list = []

while True:
    new_element = input('typehere:')
    _list.append(new_element)
    print(_list)

输出:

typehere:>? element_1
['element_1']
typehere:>? element_2
['element_1','element_2']
,

哦。没关系...我现在就知道了...每次循环重新启动时,变量都不会保存以前的值,因为我已将其声明为空列表。这段代码有效:

liist = []
while True:
    new_element = input('Type here :')
    liist.append(new_element)
    print(liist)