1

这是一个菜鸟问题,我相当确定该功能只会执行一次,但我想清楚。我正在使用 python 和 urllib 登录网站。登录后,有一个与我的帐户关联的用户 ID,可让我浏览该网站。但是我不想在每次调用变量时都登录,所以我想知道调用变量是否会导致再次登录,或者登录函数是否仅在我显式运行我的登录函数时才执行?

def login(username,pw):
     #some calls to HTTP server using urllib
     return user_id

user_id = login('abc@hotmail.com','mypassword') 

def search():
    #calls to HTTP to perform a search on a page on the website
    #I need to reference user_id and I want to know if user_id will simply be 
    # the integer user_id or if it will call the login function each time I reference it
4

2 回答 2

2

引用user_id只会返回您分配给它的原始值;该login()函数不会被调用。

于 2013-03-11T16:45:02.830 回答
2

像您所做的那样分配一个变量会立即评估右侧部分,并且只评估一次。使用该变量时不会有进一步的重新评估。

于 2013-03-11T16:45:29.303 回答