Python I';我的类出现了无效的语法错误

Python I';我的类出现了无效的语法错误,python,class,Python,Class,我学习python已经有一段时间了,但我真的很想开始使用oop,但我在理解它时遇到了困难,请告诉我我的类哪里出了问题 class Savecookies(): driver = webdriver.Firefox() def __init__(self, site, url): self.site = site self.url = url def twitter(driver, self.site, self.url): if _

我学习python已经有一段时间了,但我真的很想开始使用oop,但我在理解它时遇到了困难,请告诉我我的类哪里出了问题

class Savecookies():

    driver = webdriver.Firefox()

    def __init__(self, site, url):
        self.site = site
        self.url = url

    def twitter(driver, self.site, self.url):

if __name__=='__main__':
    cooks = Savecookies('twitter', 'https://twitter.com/')
我的错误:

  File "twitter_test2.py", line 26
    def twitter(driver, self.site, self.url):
                            ^
SyntaxError: invalid syntax

如果
twitter
是一个实例方法 改变

基本上,让它访问
站点
url
实例属性,这些属性由
\uuuuuu init\uuuuu

并让它访问类中设置的
driver
class属性

这两种类型的属性都可以通过
self.
访问,无需将其作为参数再次传递

def twitter(driver, self.site, self.url):
那是什么

首先,方法需要一个主体。否则,它们是不完整的。最简单的方法是只做
通过
(即什么也不做)。但是你可能想在里面添加一些实际的东西

第二,你的论点毫无意义。方法的第一个参数是
self
,然后指定希望该方法接受的其他参数。参数名必须是有效的变量,所以不能有点。如果您希望该方法访问
self.site
self.url
,则无需将其传递给函数即可(因为您可以访问
self
)。在您的情况下,您已经从
Savecookies
对象中获得了站点和url,因此您可能需要这样的内容:

def twitter(self, driver):
    # Do something useful here
    print(self.site, self.url)
    print(driver)

我希望你在这里发布的缩进不是你试图运行的缩进…twitter函数没有主体。如果它应该是空的,就在里面放一个
密码。@Arc676什么意思?我在每行缩进了4个空格。twitter方法在我刚刚发布的脚本中不是空白的,因为这就是我得到错误的地方。哦,你不能在参数名称中加一个点。不要发布坏代码并问我们你的代码有什么坏。
def twitter(driver, self.site, self.url):
def twitter(self, driver):
    # Do something useful here
    print(self.site, self.url)
    print(driver)