Python爬蟲技術--基礎篇--輸入與輸出語句
下面介紹Python一些基礎語法:參考廖老師官方網站
1.輸出與輸入
用print()
在括號中加上字串,就可以向螢幕上輸出指定的文字。比如輸出'hello, world'
,用程式碼實現如下:
>>> print('hello, world')
print()
函式也可以接受多個字串,用逗號“,”隔開,就可以連成一串輸出:
>>> print('The quick brown fox', 'jumps over', 'the lazy dog')
The quick brown fox jumps over the lazy dog
print()
會依次列印每個字串,遇到逗號“,”會輸出一個空格,因此,輸出的字串是這樣拼起來的:
print()
也可以列印整數,或者計算結果:
>>> print(300)
300
>>> print(100 + 200)
300
因此,我們可以把計算100 + 200
的結果列印得更漂亮一點:
>>> print('100 + 200 =', 100 + 200)
100 + 200 = 300
注意,對於100 + 200
,Python直譯器自動計算出結果300
,但是,'100 + 200 ='
是字串而非數學公式,Python把它視為字串。
輸入
現在,你已經可以用print()
輸出你想要的結果了。但是,如果要讓使用者從電腦輸入一些字元怎麼辦?Python提供了一個input()
,可以讓使用者輸入字串,並存放到一個變數裡
>>> name = input()
Michael
當你輸入name = input()
並按下回車後,Python互動式命令列就在等待你的輸入了。這時,你可以輸入任意字元,然後按回車後完成輸入。
輸入完成後,不會有任何提示,Python互動式命令列又回到>>>
狀態了。那我們剛才輸入的內容到哪去了?答案是存放到name
變數裡了。可以直接輸入name
檢視變數內容:
>>> name
'Michael'
**什麼是變數?**請回憶初中數學所學的代數基礎知識:
設正方形的邊長為a
,則正方形的面積為a x a
。把邊長a
a
的值計算正方形的面積,比如:
若a=2,則面積為a x a = 2 x 2 = 4;
若a=3.5,則面積為a x a = 3.5 x 3.5 = 12.25。
在計算機程式中,變數不僅可以為整數或浮點數,還可以是字串,因此,name
作為一個變數就是一個字串。
要打印出name
變數的內容,除了直接寫name
然後按回車外,還可以用print()
函式:
>>> print(name)
Michael
有了輸入和輸出,我們就可以把上次列印'hello, world'
的程式改成有點意義的程式了:
name = input()
print('hello,', name)
執行上面的程式,第一行程式碼會讓使用者輸入任意字元作為自己的名字,然後存入name
變數中;第二行程式碼會根據使用者的名字向用戶說hello
,比如輸入Michael
:
C:\Workspace> python hello.py
Michael
hello, Michael
但是程式執行的時候,沒有任何提示資訊告訴使用者:“嘿,趕緊輸入你的名字”,這樣顯得很不友好。幸好,input()
可以讓你顯示一個字串來提示使用者,於是我們把程式碼改成:
name = input('please enter your name: ')
print('hello,', name)
再次執行這個程式,你會發現,程式一執行,會首先打印出please enter your name:
,這樣,使用者就可以根據提示,輸入名字後,得到hello, xxx
的輸出:
C:\Workspace> python hello.py
please enter your name: Michael
hello, Michael
每次執行該程式,根據使用者輸入的不同,輸出結果也會不同。
在命令列下,輸入和輸出就是這麼簡單。
小結
任何計算機程式都是為了執行一個特定的任務,有了輸入,使用者才能告訴計算機程式所需的資訊,有了輸出,程式執行後才能告訴使用者任務的結果。
輸入是Input,輸出是Output,因此,我們把輸入輸出統稱為Input/Output,或者簡寫為IO。
input()
和print()
是在命令列下面最基本的輸入和輸出,但是,使用者也可以通過其他更高階的圖形介面完成輸入和輸出,比如,在網頁上的一個文字框輸入自己的名字,點選“確定”後在網頁上看到輸出資訊。
Python是一種計算機程式語言。計算機程式語言和我們日常使用的自然語言有所不同,最大的區別就是,自然語言在不同的語境下有不同的理解,而計算機要根據程式語言執行任務,就必須保證程式語言寫出的程式決不能有歧義,所以,任何一種程式語言都有自己的一套語法,編譯器或者直譯器就是負責把符合語法的程式程式碼轉換成CPU能夠執行的機器碼,然後執行。Python也不例外。
2.縮排
Python的語法比較簡單,採用縮排方式,寫出來的程式碼就像下面的樣子:
# print absolute value of an integer:
a = 100
if a >= 0:
print(a)
else:
print(-a)
以#
開頭的語句是註釋,註釋是給人看的,可以是任意內容,直譯器會忽略掉註釋。其他每一行都是一個語句,當語句以冒號:
結尾時,縮排的語句視為程式碼塊。
縮排有利有弊。好處是強迫你寫出格式化的程式碼,但沒有規定縮排是幾個空格還是Tab。按照約定俗成的慣例,應該始終堅持使用4個空格的縮排。
縮排的另一個好處是強迫你寫出縮排較少的程式碼,你會傾向於把一段很長的程式碼拆分成若干函式,從而得到縮排較少的程式碼。
縮排的壞處就是“複製-貼上”功能失效了,這是最坑爹的地方。當你重構程式碼時,貼上過去的程式碼必須重新檢查縮排是否正確。此外,IDE很難像格式化Java程式碼那樣格式化Python程式碼。
最後,請務必注意,Python程式是大小寫敏感的,如果寫錯了大小寫,程式會報錯。
小結
Python使用縮排來組織程式碼塊,請務必遵守約定俗成的習慣,堅持使用4個空格的縮排。
在文字編輯器中,需要設定把Tab自動轉換為4個空格,確保不混用Tab和空格。