Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python对象名和输入字符串有问题_Python_Class - Fatal编程技术网

python对象名和输入字符串有问题

python对象名和输入字符串有问题,python,class,Python,Class,我在python类和字符串方面遇到了问题,我想使用原始输入提供的字符串命名一个类对象,我现在甚至不知道这是否可行。这就是我试图这样做的方式,但代码不起作用。我在stackoverflow.com上搜索了很多帖子,但都没有得到回复;我是Python的新手,我知道类和实例是如何工作的,但我不知道有什么函数可以帮助我解决这个问题 class example: def _init_(self ,name): self.name=name input1 = raw_

我在python类和字符串方面遇到了问题,我想使用原始输入提供的字符串命名一个类对象,我现在甚至不知道这是否可行。这就是我试图这样做的方式,但代码不起作用。我在stackoverflow.com上搜索了很多帖子,但都没有得到回复;我是Python的新手,我知道类和实例是如何工作的,但我不知道有什么函数可以帮助我解决这个问题

class example:
    def _init_(self ,name):
        self.name=name
        input1 = raw_input("")

input1 = example()

我不建议您这样做,但一种方法是:

假设用户在提示下输入了“abcd”,则类
Example
的实例将绑定到名为“abcd”的变量:

但这可能也不是最好的办法,通常有更好的办法,这取决于你想要达到的目标

更安全的方法是使用字典,将用户输入用作键:

user_vars = {}
name = raw_input("Enter name: ")
user_vars[name] = Example()

>>> user_vars['abcd']
<__main__.Example instance at 0x7f841fb45908>
user_vars={}
名称=原始输入(“输入名称:”)
user_vars[name]=示例()
>>>用户变量['abcd']

请修复您的缩进。
>>> abcd
<__main__.Example instance at 0x7f841fb45908>
name = raw_input("Enter name: ")
globals()[name] = Example()
user_vars = {}
name = raw_input("Enter name: ")
user_vars[name] = Example()

>>> user_vars['abcd']
<__main__.Example instance at 0x7f841fb45908>