《Python核心编程》第二版第36页第二章练习 -Python核心编程答案-自己做的-
《Python核心編程》第二版第36頁第二章練習
這里列出的答案不是來自官方資源,是我自己做的練習,可能有誤。
2.21 練習
2-1.
變量,print和字符串格式化操作符。啟動交互式解釋器,給一些變量賦值(字符串,數值等)并通過輸入變量名顯示他們的值。再用print語句做同樣的事。這兩者有何區別?也嘗試著使用字符串格式操作符%,多做幾次,慢慢熟悉它。
【答案】
對于一個字符串,在僅使用變量名時,輸出的字符串是用單引號括起來了的。這是為了讓非字符串對象也能以字符串的方式顯示在屏幕上,即它顯示的是該對象的字符串表示,而不僅僅是字符串本身。如果使用print命令,能使輸出更加友好。
2-2.
程序輸出。閱讀下面的Python腳本。
#!/usr/bin/env python
1 + 2 * 4
(a)你認為這段腳本是用來做什么的?
(b)你認為這段腳本會輸出什么?
(c)輸入以上代碼,并保存為腳本,然后運行它,它所做的與你的預期一樣嗎?為什么一樣/不一樣?
(d)這段代碼單獨執行和在交互解釋器中執行有何不同?試一下,然后寫出結果。
(e)如何改進這個腳本,以便它能和你想象的一樣工作?
【答案】
用來計算。
會輸出9,如果是在WINDOWS系統和Ubuntu系統。
如果僅僅是以上代碼的腳本,是沒有輸出的。
在交互解釋器中執行以后得到結果9。
如果需要將其在腳本中執行并得到期望結果,需要改成 print 1 + 2 * 4 即可。
2-3.
數值和操作符。啟動交互解釋器,使用Python對兩個數值(任意類型)進行加、減、乘、除運算。然后使用取余操作符來得到兩個數相除的余數,最后使用乘方操作符求A數的B次方。
【答案】
略。
請注意Python的除法,在3.0以下的版本中,有所謂True除法和地板除。
當使用x/y形式進行除法運算時,如果x和y都是整形,那么運算的會對結果進行截取,取運算的整數部分。
>>> print 5 / 3
1
如果x和y中有一個是浮點數,那么會進行True除法。
>>> print 5 / 3.
1.66666666667
所謂floor除法,采用x//y的形式,得到不大于結果的最大整數值,這個運算時與操作數無關的。
>>> print -5 // 3
-2
>>> print -5 // 3.
-2.0
2-4.
使用raw_input()函數得到用戶輸入。
(a)創建一段腳本使用raw_input()內建函數從用戶輸入得到一個字符串,然后顯示這個用戶剛剛鍵入的字符串。
(b)添加一段類似的代碼,不過這次輸入的是數值。將輸入數據轉換為一個數值對象,(使用int()或其他數值轉換函數)并將這個值顯示給用戶看(注意,如果你用的是早于1.5的版本,你需要使用string.ato*()函數執行這種轉換)。
【答案】
(a)代碼如下:
>>> a = raw_input("Please input a string ... ")
Please input a string ... 99
>>> print a
99
(b)代碼如下:
>>> a = raw_input("Please input a letter ... ")
Please input a letter ... b
>>> print ord(a)
98
2-5.
循環和數字。分別使用while和for創建一個循環。
(a)寫一個while循環,輸出整型為0~10(要確保是0~10,而不是0~9或1~10)。
(b)做同(a)一樣的事,不過這次使用range()內建函數。
【答案】
(a)for循環代碼如下:
>>> for i in 'abcdefghijk':
...???? print ord(i)-97,
...
0 1 2 3 4 5 6 7 8 9 10
(a)while循環代碼如下:
>>> i = 0
>>> while ( i < 11 ):
...???? print i,
...???? i = i + 1
...
0 1 2 3 4 5 6 7 8 9 10
(b)代碼如下:
>>> for i in range(0,11):
...???? print i,
...
0 1 2 3 4 5 6 7 8 9 10
轉載于:https://www.cnblogs.com/balian/archive/2011/01/09/1931050.html
總結
以上是生活随笔為你收集整理的《Python核心编程》第二版第36页第二章练习 -Python核心编程答案-自己做的-的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 淘宝网消费者年维权成功金额达1.69亿
- 下一篇: oracle的cursor的介绍