python-3.x - 在Python中通过枚举定义多个变量

标签 python-3.x

我想创建一个 python 脚本,它可以通过用户提供的 6 个输入执行各种操作。

缺少打字,

x1=input("Enter data1")

...

x6=input("Enter data6")

有没有办法通过某种索引来定义这些变量?我不知道代码是什么,但它会产生以下效果:

让 i 的范围从 1 到 6。让 x_i=input("Enter Data_i")

最佳答案

作为一种 Pythonic 方式,您可以使用字典来完成此类任务:

d={}
for i in range(1,7):
   d['x_{}'.format(i)]=input("Enter data{}  :".format(i))

然后您可以使用简单的索引获取变量的相对值。

还有你 可以使用collections.OrderedDict来保留顺序:

>>> from collections import OrderedDict
>>> d=OrderedDict()
>>> for i in range(1,7):
...    d['x_{}'.format(i)]=input("Enter data{}  :".format(i))
... 
Enter data1  :12
Enter data2  :13
Enter data3  :14
Enter data4  :15
Enter data5  :16
Enter data6  :17
>>> 
>>> d
OrderedDict([('x_1', '12'), ('x_2', '13'), ('x_3', '14'), ('x_4', '15'), ('x_5', '16'), ('x_6', '17')])
>>> 
>>> d['x_3']
'14'

关于python-3.x - 在Python中通过枚举定义多个变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31708113/

相关文章:

python - heapq.merge 是否可以与 Iterator 类一起使用?

python - 如何在Python中将many_days转换为daily?

python - 当有东西要获取/拉取时与没有东西时从 gitPython 返回的 FetchInfo 对象有什么区别?

python - 在 python 中自定义 __delattr__

python - 分配字典键和值时出现 KeyError

python - 使用带有多个分隔符的 numpy 数组导入

python - 在 pandas 数据框中过滤和分配值

用于谷歌游戏商店抓取的 Python API

python-3.x - 当每页有 30 个元素时,BeautifulSoup 仅返回每页 20 个元素

python-3.x - 在 pandas 数据框中的行之间添加随机数据