如何使变量名依赖于python中的输入?

如何解决如何使变量名依赖于python中的输入?

我需要基于 int 输入创建多个变量,以便如果输入为 5,则创建变量,例如:worker1、worker2、worker3 等

有什么方法可以生成这样的变量,然后根据用户选择的数字向它们添加点数吗? 示例:

有多少工人? 10 -选择工人 4 -为worker4增加1点

解决方法

您可以使用字典代替使用多个变量。使用多个变量不如使用字典那么 Pythonic,并且在处理大数据时可能会很麻烦。在您的示例中,您可以使用字典来存储每个工人及其点数。 可以找到字典文档here

例如:

#recieve a valid input for the number of workers
while True:
    num = input("How many workers would you like to create?\n") # accepts an int
    try:
        num = int(num)
    except ValueError:
        print("Must input an integer")
    else:
        break

#create a dictionary with the workers and their scores (0 by default)
workers = {'worker'+str(i+1) : 0 for i in range(num)}

# get the user to choose a worker,and add 1 to their score
while True:
    worker = input("Which worker would you like to add a point to?\n") #accepts worker e.g worker1 or worker5
    if worker in workers:
        workers[worker] += 1
        print(f"Added one point to {worker}")
        break
    else:
        print("That is not a worker")

print(workers)

此代码获取用户输入以创建一定数量的工作人员。然后它获取用户输入以向其中一个工作人员添加一个点。您可以更改此设置以向不同的工作人员添加多个点,但这只是一个基本示例,这取决于您想用它做什么。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?