2017-04-09 89 views
-2

對於以下代碼,mysock.send行中的addr兩側的加號是什麼意思?最後的打印聲明之後的分號的目的是什麼?Python語法問題

import socket 

try: 

    addr = raw_input('Enter URL: ') 

    site = addr.split('/') 
    site = site[2] 


    mysock = socket.socket(socket.AF_INET, socket.SOCK_STREAM) 
    mysock.connect((site, 80)) 
    mysock.send('GET '+addr+' HTTP/1.0\n\n') 

    while True: 
    data = mysock.recv(512) 
    if (len(data) < 1) : 
     break 
    print data; 


    mysock.close() 

except: 
    print 'Error, enter a valid URL' 
+4

'+'是字符串連接。分號是一個可選的語句分隔符,在這種情況下是多餘的。 – pvg

+0

這不應該是「addr」_的任一側嗎?你可以用'addr ='foo'來測試; print repr('GET'+ addr +'HTTP/1.0 \ n \ n')' – tdelaney

回答

2

字符串可以使用Python的+操作符來直接連接起來,而這正是在這種情況下怎麼回事。

至於分號,就我所知,它在這種情況下什麼都不做。我的猜測是,在print語句之後曾經有過另一個語句,但編寫此代碼的人員已將其刪除。