使用'pass'作为字典关键字

Klu*_*key 2 python python-3.x

我正在尝试制作一个相当基本的请求脚本,它会登录到一个网站,但是我遇到了一个问题; 该网站需要'pass'键,但每当我尝试使用此python时,都会抛出一个错误,指出语法无效.这是我的代码:

import requests

with requests.Session() as c:
    url = 'www.a_url.com'
    USERNAME = 'a username'
    PASSWORD = 'a password'
    c.get(url)
    login_data = dict(user=USERNAME, pass=PASSWORD, jsok='1', dologin='Login')
    c.post(url, data=login_data, headers={"Referer": 'www.a_referer.com'})
    page = c.get('www.a_page.com')
    print(page.content)
    output = open('test.html','w')
    output.write(str(page.content))
Run Code Online (Sandbox Code Playgroud)

我给出的错误是:

    login_data = dict(user=USERNAME, pass=PASSWORD, jsok='1', dologin='Login')
                                        ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

知道如何强制python忽略'pass'并将其用作dict键吗?

mgi*_*son 10

由于pass是关键字,因此不能用作标识符.你需要使用dict-literal:

login_data = {
    'user': USERNAME,
    'pass': PASSWORD,
    'jsok': '1',
    'dologin': 'Login',
}
Run Code Online (Sandbox Code Playgroud)