print 與 input
標準輸出
我們知道,最簡單輸出到螢幕的方法就是用 print
函式,任何基本的資料都能用 print
輸出,甚至我們可以用逗號去一次輸出多個資料:
print('hello world')
print(1, 2, 3)
print('dokelung', 27)
print([1, 2, 3])
hello world
1 2 3
dokelung 27
[1, 2, 3]
但有個討厭的狀況是,Python 的列印會自動換行,那是因為這個函數有一個參數叫做 end
,指的是印完之後在行尾的結束字元,而 end
的預設值是 \n
,所以當今天需要不斷行地列印時,我們需要將參數 end
設定為 ' '
,:
print(1, end=' ')
print(2, end=' ')
print(3)
1 2 3
如此我們就不會被強制斷行了。
標準輸入
那要如何輸入呢? 使用input
:
# guess.py
answer = 6
while True:
str_num = input('請輸入一個1-10之間的整數:')
int_num = int(str_num)
if int_num==answer:
print('猜中拉!')
break
這邊展示了一個完整的例子,我們設計了一個很簡單的猜數字,input
函式會讓使用者能從鍵盤輸入,該輸入我們將他存到 str_num
這個變數之中,在 input()
內的字串是我們給使用者的輸入提示。
這邊有一點要注意,任何輸入 (不管你輸入的是 hello
或是 123
) 都會被當成字串,而使用 int
函式可以幫助我們將字串轉為整數。
如果輸入的數字跟答案相符,我們會告訴使用者猜中了,並且中斷迴圈,結束程式,否則這個無窮迴圈會無止盡地要求使用者輸入數字,直到猜對答案或是手動中斷程式為止。
我們可以將這個檔案運行來試試看:
$ python guess.py
以下是可能的測試結果:
請輸入一個1-10之間的整數:9
請輸入一個1-10之間的整數:1
請輸入一個1-10之間的整數:4
請輸入一個1-10之間的整數:6
猜中拉!