gpt4 book ai didi

python - 从字符串用户输入Python创建类的对象

转载 作者:行者123 更新时间:2023-12-02 20:41:19 25 4
gpt4 key购买 nike

假设我想用 Python 实现一个简单的数据库。我通过创建一个类来做到这一点

class myStruct():
def __init__(self,name,salary,doB,title):
self.name=name
self.salary=salary
self.doB=doB
self.title=title

现在,我想创建该类的对象。但我希望用户自己为每个对象输入所有变量,并且对象的名称将是用户输入的名称。我看到其他一些 StackOverflow 页面描述了类似的内容,例如此链接 how to dynamically create an instance of a class in python?但这与从另一个模块导入的类有关,而且我不理解 klass=global()["class_name"]。我不明白如何从用户输入的字符串链接到使用 global()。

同样,这个想法甚至是用户键入 myStruct 类的每个对象的名称,以及该对象的所有其他字段。我该怎么做?

编辑:我认为有些人不理解我想要做什么。重点不是写出来

instance=MyStruct(name,salary,doB,title)

在我的代码中,而是有一个函数来创建一个实例,该实例以用户输入的名称命名。所以会是这样的

name=input('Enter your name') 
'%s' %name=MyStruct(name)

你明白了吗?该名称被替换为。

最佳答案

# Collect the data from user
nameVar = input('Type the name: ')
salVar = input('Type the salary: ')
dobVar = input('Type the doB: ')
titleVar = input('Type the title: ')

# Create the instance of the myStruct object
myInstance = myStruct(nameVar, salVar, dobVar, titleVar)

顺便说一句,不使用大写来命名类是不好的风格。您应该始终使用大写的第一个字母来调用您的类 => MyStruct

关于python - 从字符串用户输入Python创建类的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46028544/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com