应当没有问题的,你看代码是可以直接赋值的:
>>> class tb:
def __init__(self):
self.__tablename__ = ''
def settablename(self, s):
self.__tablename__ = s
>>> t = tb()
>>> t.settablename('abc')
>>>
>>> t.__tablename__
'abc'
>>> t.settablename('cde')
>>> t.__tablename__
'cde'
>>> t.__tablename__ = 'efg'
>>> t.__tablename__
'efg'
>>>
1、_xxx 不能用于’from module import *’ 以单下划线开头的表示的是protected类型的变量。
即保护类型只能允许其本身与子类进行访问。
2、__xxx 双下划线的表示的是私有类型的变量。只能是允许这个类本身进行访问了。连子类也
不可以
3、__xxx___ 定义的是特列方法。像__init__之类的