天天看點

python之raw_input()(學習筆記六)

python之raw_input()(學習筆記六)

我們經常使用raw_input()讀取使用者的輸入,如下例子所示:

>>> name = raw_input('please input your name:'),截圖如下:

python之raw_input()(學習筆記六)

下面簡單說下,raw_input()與if搭配使用,腳本如下:

#!/usr/bin/env python

# -*- coding:utf-8 -*-

birth = raw_input('birth:')

if birth < 2000:

    print '00前'

else:

    print '00後'

下面我們來運作腳本,結果如截圖所示:

[root@redhat6 tmp]# chmod +x 1.py

[root@redhat6 tmp]# python 1.py

birth:

python之raw_input()(學習筆記六)

上圖我們看到的結果與我們預想的不一樣,輸入1982,系統輸出的應該是00前,下面說下原因:

>>> birth

'1982'

>>> '1982' < 2000

False

>>> 1982 < 2000

True

原因找到了!原來從 raw_input() 讀取的内容永遠以字元串的形式傳回,把字元串和整數比較就不會得到期待的結

果,必須先用 int() 把字元串轉換為我們想要的整型:

birth = int(raw_input('birth: '))

将1.py的腳本更改為:

python之raw_input()(學習筆記六)

執行後結果如下:

python之raw_input()(學習筆記六)

注意點:

(1)在1.py腳本中,寫if循環時,在shell中是if開頭,fi結尾。但在python中if開頭,沒有fi結尾!否則報錯,截圖如下:

python之raw_input()(學習筆記六)