如何在少数子类中使用一个自我权限 有这样的代码:
String text=driver.findElement(By.xpath("//span[@id='spnLogCount']")).getText();
System.out.println(text);
我想用一个self创建一个User对象并用它做一些动作
我试试:
class User(object):
def __init__(self)
self.user_session = Session()
def wallet_sum(self):
self.user_session.get('current wallet sum')
class Action(object):
def __init__(self):
self.user_session = User.user_session
def buy_dog(self):
self.user_session.post('buy_dog')
class Listing(object)
def my_dogs(self):
self.user_session.get('all_my_dogs')
user = User()
user.Action.buy_dog()
user.Listing.my_dogs()
答案 0 :(得分:3)
您只在类User
的命名空间内定义了类。 User
的一个实例没有神奇的内部类实例(即在Python中没有像内部类那样)。所以其他类中的类定义通常没用。
您必须为其他类提供对user
对象的显式引用:
class User(object):
def __init__(self)
self.user_session = Session()
self.action = Action(self)
self.listing = Listing(self)
def wallet_sum(self):
self.user_session.get('current wallet sum')
class Action(object):
def __init__(self, user):
self.user_session = user.user_session
def buy_dog(self):
self.user_session.post('buy_dog')
class Listing(object)
def __init__(self, user):
self.user = user
def my_dogs(self):
self.user.user_session.get('all_my_dogs')
user = User()
user.action.buy_dog()
user.listing.my_dogs()
答案 1 :(得分:0)
AttributeError: type object 'User' has no attribute 'user_session'
。你是从self.user_session = User.user_session
得到的。 User
没有名为user_session
的属性。相反,实例User()
具有。
无论如何,内心class
es ??如果您只是在print
定义中编写随机def
语句或class
,请看看会发生什么。它完全是合法和毫无意义(一般而言)。任