我已经做了一个简单的测试程序来使用类进行实验。它创建了一个“人”类,它接受了名称和年龄的论点。我现在正在尝试创建一个交互式程序,允许用户管理一个人员列表,如注册表或通讯簿。他们可以创建一个新的人,如下面的功能所示。Python:将函数结果/变量的值赋给一个类
def createnew():
newname = input("What is their name?")
newage = input("How old are they?")
newperson = Person(newname, newage)
当然,上面的问题是,它的字面意思是分配newname,而不是字符串值“newname”。所以我试了
newperson.lower() = Person(newname, newage)
str(newperson) = Person(newname, newage)
newperson[0:] = Person(newname, newage)
但是他们都返回错误,不能分配给函数调用。 我的问题是如何访问变量newname的值并将其分配给Person或任何其他类。
注:我是一个n00b/newb,这意味着我不是来自另一种语言,并且正在阅读一本书。如果他们不是很明显,请解释给出的答案。
很多谢谢。
它弄得有一点更清晰,我试图让新的人的名字对象名称,用户输入的值(在我的例子是newperson)
更新:
感谢所有答案,我认为允许用户设置变量名称并不是一个好主意,所以我重新调整了我的代码。我创建了一个字典,在用户创建新人之后,将类str函数给出的数据写入给定名称的键。虽然这意味着我以后不能访问该对象,因为新人将被覆盖,它允许我用一组数据创建一个列表,这是我想要做的第一个地方,我只是错误地认为设置对象名称会更容易。 再次感谢。
你使用Python 2或Python 3? – imm 2012-03-17 17:58:18