python - 从函数外部调用在函数中创建的对象
问题描述
用例很简单:我从 Python 中的一个类创建一个对象。如果我在任何函数之外创建该对象,我可以毫无问题地取回任何属性。
但不知何故,如果我碰巧在函数中创建了该对象,我无法将它取回任何地方。
这有效:
class UserTest():
def__init__(self,name,age,size):
self.name=name
self.age=age
self.size=size
FirstUser=UserTest(name,age,size)
print(FirstUser.name,FirstUser.age,FirstUser.size)
但这不会:
class UserTest():
def__init__(self,name,age,size):
self.name=name
self.age=age
self.size=size
def createUser(name,age,size):
FirstUser=Usertest(name,age,size)
return FirstUser
createUser('Max',38,180)
print(FirstUser.name,FirstUser.age,FirstUser.size)
而且我无法弄清楚为什么我找不到我刚刚创建的对象,即使我在函数末尾返回了 FirstUser 对象。我错过了什么?
解决方案
必须将返回的对象createUser('Max',38,180)
分配或缓存到引用变量中,然后该引用变量可用于调用其成员,就像这样
user = createUser('Max',38,180)
,此引用变量 user
可用于调用其成员。
推荐阅读
- javascript - 将servelt中的字符串转换为json数据并将其传递给javascript:ajax
- android - React Native 应用程序在启动时崩溃 - Android
- python - 在数据框列中获取 NaN 而不是正确的值
- jquery - 带有 Wordpress 的 jQuery 自动完成功能正在搜索每个帖子类型
- jenkins - 如何在子作业失败时在父作业中获取子作业日志?
- pdf - 如何在代码中编辑受密码保护(加密)的 PDF 文件
- java - Java Transformer 将汉字转换为 ASCII 值
- php - 从 laravel 中的空值创建默认对象但也工作得很好?
- r - 如何在数据框上执行功能
- python - Python Scrapy - 将抓取的数据从第一个 URL 传递到第二个 URL 并抓取数据