python 打印相關(guān)的問答

2021-09-15 14:46 更新

練習(xí)11.提問

叢這節(jié)開始我們要恢復(fù)之前的腳步。我已經(jīng)出過很多打印相關(guān)的練習(xí),讓你習(xí)慣寫簡單的東西,但簡單的東西都有點無聊。我們現(xiàn)在要做的是把數(shù)據(jù)讀到你的程序里邊去。這可能對你有點難度,你可能一下子不明白,不過你需要相信我,無論如何把習(xí)題做了再說。只要做幾個練習(xí)你就明白了。

一般軟件做的事情主要就是下面幾條:

  1. 接收人的輸入.
  2. 改變輸入.
  3. 打印改變后的輸入值

到目前為止你只做了打印字符串,但還不會接收或者修改人的輸入。你也許還不知道“輸入(input)”是什么意思。但是在代碼中輸入這個單詞還是跟以前一樣的,所以閑話少說,我們還是開始做點練習(xí)看你能不能明白。下一個習(xí)題里邊我們會給你更多的解釋。

print "How old are you?",
age = raw_input()
print "How tall are you?",
height = raw_input()
print "How much do you weigh?",
weight = raw_input()

print "So, you're %r old, %r tall and %r heavy." % (
    age, height, weight)

NOTE:注意我在每行 print 后面加了個逗號(comma) ,了吧?這樣的話 print 就不會輸出新行符而結(jié)束這一行跑到下一行去了。

你看到的結(jié)果

$ python ex11.py
How old are you? 38
How tall are you? 6'2"
How much do you weigh? 180lbs
So, you're '38' old, '6\'2"' tall and '180lbs' heavy.

附加題

  1. 上網(wǎng)查一下 Python 的raw_input 實現(xiàn)的是什么功能。
  2. 你能找到它的別的用法嗎?測試一下你上網(wǎng)搜索到的例子。
  3. 用類似的格式再寫一段,把問題改成你自己的問題
  4. 結(jié)合轉(zhuǎn)義序列,想想為什么最后一行'6\'2"' 里邊有一個\' 序列。單引號需要被轉(zhuǎn)義,從而防止它被識別為字符串的結(jié)尾。有沒有注意到這一點?

常見問題

Q:如何接收用戶輸入的數(shù)字,用來進行數(shù)學(xué)計算?

這略微復(fù)雜一些,你可以試試用x = int(raw_input()) 將通過raw_input()獲得的字符串轉(zhuǎn)化成整數(shù)。

Q:我用raw_input("6'2")輸入我的身高值,但是它沒有生效。

你應(yīng)該在你的終端里輸入,而不是把輸入值寫到raw_input()的括號里。首先請檢查你的代碼是否和我提供的樣例一樣,然后執(zhí)行這個腳本,當(dāng)收到提示的時候,再輸入你的身高。

Q:為什么你在第8行代碼的時候換行了,而沒有讓這句代碼在一行上?

這樣做的目的是讓一行代碼少于80個字符,這是一種Python程序員喜歡的代碼風(fēng)格,如果你喜歡,你也可以把它們放在一行里。

Q:input()raw_input()有什么區(qū)別?

在Python代碼里input()方法將會改變你輸入的東西,但是這個方法存在安全問題,請盡量避免使用它。

Q:什么情況下我應(yīng)該在輸入的字符串前面加一個u, 比如 u'35'?

在Python中用這種方式告訴你這是一個Unicode編碼的字符串。用%s格式可以讓你正常打印。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號