Append several variables to a list in Python(在 Python 中将多个变量附加到列表中)
问题描述
我想将几个变量附加到一个列表中.变量的数量不同.所有变量都以volume"开头.我在想也许是通配符或其他东西可以做到.但我找不到这样的东西.任何想法如何解决这个问题?请注意,在此示例中它是三个变量,但也可以是五个或六个或任何值.
I want to append several variables to a list. The number of variables varies. All variables start with "volume". I was thinking maybe a wildcard or something would do it. But I couldn't find anything like this. Any ideas how to solve this? Note in this example it is three variables, but it could also be five or six or anything.
volumeA = 100
volumeB = 20
volumeC = 10
vol = []
vol.append(volume*)
推荐答案
您可以使用 extend
将任何可迭代对象附加到列表中:
You can use extend
to append any iterable to a list:
vol.extend((volumeA, volumeB, volumeC))
根据你的变量名的前缀对我来说有一种不好的代码味道,但你可以做到.(附加值的顺序未定义.)
Depending on the prefix of your variable names has a bad code smell to me, but you can do it. (The order in which values are appended is undefined.)
vol.extend(value for name, value in locals().items() if name.startswith('volume'))
如果顺序很重要(恕我直言,仍然闻起来不对):
If order is important (IMHO, still smells wrong):
vol.extend(value for name, value in sorted(locals().items(), key=lambda item: item[0]) if name.startswith('volume'))
这篇关于在 Python 中将多个变量附加到列表中的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:在 Python 中将多个变量附加到列表中


基础教程推荐
- Dask.array.套用_沿_轴:由于额外的元素([1]),使用dask.array的每一行作为另一个函数的输入失败 2022-01-01
- 何时使用 os.name、sys.platform 或 platform.system? 2022-01-01
- Python kivy 入口点 inflateRest2 无法定位 libpng16-16.dll 2022-01-01
- 线程时出现 msgbox 错误,GUI 块 2022-01-01
- 筛选NumPy数组 2022-01-01
- 如何在海运重新绘制中自定义标题和y标签 2022-01-01
- 如何让 python 脚本监听来自另一个脚本的输入 2022-01-01
- 在 Python 中,如果我在一个“with"中返回.块,文件还会关闭吗? 2022-01-01
- 使用PyInstaller后在Windows中打开可执行文件时出错 2022-01-01
- 用于分类数据的跳跃记号标签 2022-01-01