使用字符串输入创建类实例(python)

时间:2013-02-26 20:41:51

标签: python string input instantiation

我想创建类实例并使用用户输入字符串命名它们。像这样的东西,实际上是有效的。有什么想法吗?

class Account:
     balance=0

input("What's your name?") = Account()

如果用户输入Scott,我希望能够使用Scott.balance等调用属性。

4 个答案:

答案 0 :(得分:1)

最好将它们存储在字典中。使用用户输入在全局/本地空间中创建变量是一个麻烦的方法。

accounts = {}
account[x] = Account()

答案 1 :(得分:1)

使用内置raw_input将用户输入作为“构造函数”的参数

class Account:
     def __init__(self, name=0, money=0):
         self.name = name
         self.money = money

input = raw_input("What's your name? -->")
account = Account(input,10000)

答案 2 :(得分:0)

为您的班级提供__init__方法:

class Account:
     def __init__(self, x=1, y=2):
         self.x = x
         self.y = y

刚刚初始化它:

def createAccount(x):
    return Account(x)

答案 3 :(得分:0)

我们可以使用两种方式从类外部输入字符串,方法是将它们正常传递给init:input()或raw_input()。

class Account:
     def __init__(self, balance):
        self.balance = balance
     def output_all(self):
        print( '{}'.format(self.balance))

MyAccount = Account(input('Type your account : '))

Account.output_all(MyAccount)