笨辦法學Python習題35 加分習題

2021-08-14 04:20:54 字數 2156 閱讀 2998

加分習題

1. 把這個遊戲的地圖畫出來,把自己的路線也畫出來。

2. 改正你所有的錯誤,包括拼寫錯誤。

3. 為你不懂的函式寫註解。記得文件註解該怎麼寫嗎?

4. 為遊戲新增更多元素。通過怎樣的方式可以簡化並且擴充套件遊戲的功能呢?

5. 這個 gold_room 遊戲使用了奇怪的方式讓你鍵入乙個數字。這種方式會導致什麼樣的 bug?

你可以用比檢查 0、1 更好的方式判斷輸入是否是數字嗎?int() 這個函式可以給你一些頭緒。

只需用next.isdigit()判斷是否輸入的為純數字,然後int格式化,再和50判斷大小

def

gold_room

(): print("this room is full of gold. how much do you take?")

next = raw_input("> ")

# if "0" in next or "1" in next:

if next.isdigit():

how_much = int(next)

else:

dead("man, learn to type a number.")

if how_much < 50:

print("nice, you're not greedy, you win!")

exit(0)

else:

dead("you greedy bastard!")

————————————分割線—————————————

以下為參考的網路資料:判斷python輸入是否為數字

在接收raw_input方法後,判斷接收到的字串是否為數字

例如:str = raw_input(「please input the number:」)

if str.isdigit():

為true表示輸入的所有字元都是數字,否則,不是全部為數字

str為字串 str.isalnum() 所有字元都是數字或者字母 str.isalpha() 所有字元都是字母 str.isdigit() 所有字元都是數字 str.islower() 所有字元都是小寫 str.isupper() 所有字元都是大寫 str.istitle() 所有單詞都是首字母大寫,像標題 str.isspace() 所有字元都是空白字元、\t、\n、\r

上述的主要是針對整型的數字,但是對於浮點數來說就不適用了,那麼浮點數怎麼判斷呢,一直在糾結這個問題,為什麼非要區分整型和浮點數呢,既然都是參與運算的,全部適用浮點數不是一樣嗎,在得到結果後,直接轉換為int型不是一樣嗎,為什麼非要糾結在前期去判斷是否整型或者浮點數呢,有了這樣的思路,下面就好做了,例如:

我們可以通過異常來判斷,異常語法如下:

try: exception:

str = raw_input(「please input the number:」)

try: f = float(str) exception valueerror: print(「輸入的不是數字!」)

還有一種純粹判斷是否為浮點數的方法,使用正規表示式:

1.#引用re正則模組

import re

float_number = str(input(「please input the number:」))

value = re.compile(r』^[-+]?[0-9]+.[0-9]+$』)

result = value.match(float_number)

if result:

print "number is a float."
else:

print "number is not a float."
關於這個正規表示式,解釋一下:

^[-+]?[0-9]+.[0-9]+$

^表示以這個字元開頭,也就是以[-+]開頭,[-+]表示字元-或者+之一,

?表示0個或1個,也就是說符號是可選的。

同理[0-9]表示0到9的乙個數字,+表示1個或多個,也就是整數部分。

.表示的是小數點,\是轉義字元因為.是特殊符號(匹配任意單個除\r\n之外的字元),

所以需要轉義。

小數部分同理,$表示字串以此結尾。

《笨辦法學python》習題38 40

mystuff 然後作者又給出了乙個錯誤的情況 class thing object def test hi print hia thing a.test hello 錯誤原因是test 只可以接受乙個引數,卻給了兩個。也就是 a.test hello 實際上是test a,hello 從這裡開始到...

《笨辦法學Python》 習題3

加分習題 系統 mac os 10.14 python 2.7.10 版本 笨辦法學python 第四版 print i will now count my chickens print hens 25 30 6.0 print roosters 100 25 3 4 print now i wil...

《笨辦法學Python》 習題6

加分習題 系統 mac os 10.14 python 2.7.10 版本 笨辦法學python 第四版 x there are d types of people.10 binary binary do not don t y those who know s and those who s.bi...