Ale*_*lex 4 python instantiation instance
我正在做这样的事情:
class Class(object):
def __init__(self):
self.var=#new instance name string#
Run Code Online (Sandbox Code Playgroud)
如何使我的实例的__ init __方法使用实例名称字符串'c'?以防万一:
c=Class()
Run Code Online (Sandbox Code Playgroud)
我希望c.var等于'c'.
感谢您的回复,我正在实现持久性,而Class是持久对象的类.我希望__ init __在以下情况下向数据库添加条目:
c=Class()
Run Code Online (Sandbox Code Playgroud)
然后,假设:
del c
Run Code Online (Sandbox Code Playgroud)
稍后的:
c=Class()
Run Code Online (Sandbox Code Playgroud)
如果已存在条目"c",则sholuld使用数据库中的数据创建实例,否则创建新条目.
感谢您的回复,我正在实现持久性,而Class是持久对象的类.我希望__ init __在以下情况下向数据库添加条目:
c=Class()
Run Code Online (Sandbox Code Playgroud)
然后,假设:
del c
Run Code Online (Sandbox Code Playgroud)
稍后的:
c=Class()
Run Code Online (Sandbox Code Playgroud)
如果已存在条目"c",则sholuld使用数据库中的数据创建实例,否则创建新条目.
Python没有变量,它有对象和名称.当你这样做
c = Class()
Run Code Online (Sandbox Code Playgroud)
你做了两件事:
Class
c
当前范围中的名称.您创建的对象没有任何"变量名称"的概念 - 如果稍后您这样做
a = c
Run Code Online (Sandbox Code Playgroud)
然后使用名称a
和完全相同的方式访问相同的对象c
.您可以删除名称a
,该对象仍然存在.
如果您创建的对象需要具有名称,最好的方法是明确地将它传递给它们,
class Class(object):
def __init__(self, name):
self.name = name
var = Class('var')
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
3079 次 |
最近记录: |