4

可能重复:
Python 'self' 解释

我只是在文档的帮助下编写了如下代码,但对某些方法的作用selenium感到困惑?为什么我需要导入类?selfargument listunittest

import unittest
from selenium import webdriver
from selenium.webdriver.common.keys import Keys

class PythonOrgSearch(unittest.TestCase):

    def setUp(self):
        self.driver = webdriver.Firefox()

    def test_search_in_python_org(self):
        driver = self.driver
        driver.get("http://www.python.org")
        self.assertIn("Python", driver.title)
        elem = driver.find_element_by_name("q")
        elem.send_keys("selenium")
        elem.send_keys(Keys.RETURN)
        self.assertIn("Google", driver.title)

    def tearDown(self):
        self.driver.close()

if __name__ == "__main__":
    unittest.main()
4

1 回答 1

5

self在成员方法的情况下,用于表示类的调用实例。这是必需的,以便类的成员方法作用于正确的对象。这与 Selenium 没有任何关系,而是该语言的一般特性。

类似于thisC++ 中的参数

定义类时,在定义类的数据成员时使用该self参数,就像在您的类中所做的那样。

于 2012-12-30T10:33:45.730 回答