python - Python - 从另一个列表中获取所有索引
问题描述
我正在尝试附加另一个列表的索引列表。
我有一个带有随机数的列表,需要创建另一个列表,其中包含第一个列表的索引。
我的代码是这样的:
from random import seed
from random import randint
seed(715)
g1 = []
g2 = []
for v in range(20328):
valor = randint(40, 220)
g1.append(valor)
for v in enumerate(g1):
g2.append(v)
print("v g1[v] g2[v] g1[g2[v]]")
for v in [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]:
print(v, g1[v], g2[v], g1[g2[v]])
但我收到以下错误:
print(v, g1[v], g2[v], g1[g2[v]])
TypeError: list indices must be integers or slices, not tuple
我究竟做错了什么?
解决方案
g2 设置为程序中的元组列表,而不是整数。如果您使用print(g2[0])
查看里面的内容,您会得到类似于g2[0]:(0, 69)
元组的内容。所以这就是问题所在。
您可以使用以下任何方法来解决此问题:
for v in enumerate(g1):
g2.append(v[1])
或者
for index, value in enumerate(g1):
g2.append(value)
或者
for value in g1:
g2.append(value)
有用的资源: https ://docs.python.org/3/library/functions.html#enumerate
推荐阅读
- javascript - 如何处理正在快速解析的查询
- r - 如何将某些列操作成行
- java - 如何使用drools文件中的索引/索引遍历列表
- java - JSON:解析数组
- android - Flutter:操作系统错误:是一个目录,errno = 21)
- android - 适用于 Android 的 Shadow Gradle 插件
- latex - 使用 Pandoc 将中文 docx 文件转换为 markdown
- html - 没有找到看似正确的路径转换器的 ReserveMatch
- python - IsADirectoryError:[Errno 21] 是目录:使用多处理时出现“/”错误
- asp.net-core - NSwag 的生成代码是什么意思?