python-3.x - 基于变量向特定列表添加值的最实用方法
问题描述
标题可能听起来有点奇怪,但情况并非如此。
我有一些清单。在这里它们被初始化(全局变量):
sensor0, sensor1, sensor2, sensor3 = ([] for i in range(4))
现在我们有一个变量来指示我可以插入数据的列表。假设它是selector = 3
.
这意味着我应该将我的值附加()到sensor3
列表中。
在 python 中执行此操作的最实用方法是什么?如果它是 C 风格的语言,我会使用switch-case
.
但是switch-case
python中没有语法。当然我可以做多个if
s,但这似乎不是最好的方法。
我想知道,由于列表中只有一个字母每次都会更改,因此也许有更好的方法来append()
根据selector
变量选择正确的列表。
解决方案
对于您的具体情况,请使用 eval
sensor0, sensor1, sensor2, sensor3 = ([] for i in range(4))
sensor3 = 20
selector =3
result = eval("sensor"+str(selector))
print(result)
但使用列表可能是更好的选择。 使用列表
sensor = [[] for i in range(4)]
selector = 3
sensor[selector] = 20
print(sensor[selector])
推荐阅读
- python - 将串行读取从 python2 转换为 python3
- nestjs - NestJS TypeORM OneToMany 列未显示在数据库中
- angular - Angular 中的导入/导出/声明组件存在问题
- reactjs - 带有 mern 堆栈的 Socket io 使用 100% 的 CPU 功率
- .net - 在 IIS 中禁用匿名身份验证会在 VS 中启用并锁定它
- javascript - 如何使用 appendChild (document.createTextNode) 创建空间
- redux - 我对“RTK 查询”有一些问题
- string - 如果前几行匹配,则替换一行
- ios - 设置 LineChartView 的 Y 轴最大值 | 吊舱“图表”
- postgresql - 如果该列的所有值为 NULL,则具有 NULL 值的数字类型的 Postgresql 更新列将失败