Python 3.9.1 迭代lst传递给tst2
Python 3.9.1 iterate lst to pass to tst2
我想从列表中读取所有元素,lst
,检查值,更改为数字并保存在另一个列表中,lst2
。
lst = ['a','b','c']
lst2 = []
for x in range(len(lst)):
if lst[x] == 'a':
lst2[x] == 1
if lst[x] == 'b':
lst2[x] == 2
if lst[x] == 'c':
lst2[x] == 3
print(lst2)
错误:
IndexError: list index out of range.
我已经尝试过 while 循环,我得到了同样的信息。
我可以通过其他方式实现吗?
您需要用一些值填充 lst2
才能使订阅分配生效:
lst = ['a','b','c']
lst2 = [None] * len(lst)
for x in range(len(lst)):
if lst[x] == 'a':
lst2[x] = 1
if lst[x] == 'b':
lst2[x] = 2
if lst[x] == 'c':
lst2[x] = 3
print(lst2)
其中 [None] * len(lst)
returns [None, None, None]
.
当然还有 list.append()
方法,如果你能确定使用的值将被添加到连续的索引中,这将非常方便。
我想从列表中读取所有元素,lst
,检查值,更改为数字并保存在另一个列表中,lst2
。
lst = ['a','b','c']
lst2 = []
for x in range(len(lst)):
if lst[x] == 'a':
lst2[x] == 1
if lst[x] == 'b':
lst2[x] == 2
if lst[x] == 'c':
lst2[x] == 3
print(lst2)
错误:
IndexError: list index out of range.
我已经尝试过 while 循环,我得到了同样的信息。 我可以通过其他方式实现吗?
您需要用一些值填充 lst2
才能使订阅分配生效:
lst = ['a','b','c']
lst2 = [None] * len(lst)
for x in range(len(lst)):
if lst[x] == 'a':
lst2[x] = 1
if lst[x] == 'b':
lst2[x] = 2
if lst[x] == 'c':
lst2[x] = 3
print(lst2)
其中 [None] * len(lst)
returns [None, None, None]
.
当然还有 list.append()
方法,如果你能确定使用的值将被添加到连续的索引中,这将非常方便。