1. 程式人生 > >課時2:用python設計第一個遊戲

課時2:用python設計第一個遊戲

mage ctr 輸入 png 下一條 hello ilove ons window

目錄:

一、第一個小遊戲

二、縮進

三、BIF

四、課時02課後習題及答案

*********************

一、第一個小遊戲

*********************

# p2_1.py
"""--- 第一個小遊戲 ---"""
temp = input("不妨猜猜小甲魚現在心裏想的是哪一個數字:")
guess = int(temp)
if guess == 8:
      print("臥槽!你是小甲魚心裏的蛔蟲嗎?")
      print("哼,猜中了也沒有獎勵!")
else:
      print("猜錯啦,小甲魚現在心裏想的是8")
print("遊戲結束,不玩啦^_^
")

step1:打開shell 打開IDIE

step2:新建窗口 選擇File->New Window 命令(或者你可以直接按ctrl+n鍵,新建一個文件)

step3:敲入代碼 按照上面的格式填入代碼

step4:保存文件 按快捷鍵ctrl+s,將源代碼保存為名為p2_1.py的文件

step5:運行代碼 輸入代碼一起體驗一下,F5走起(也可以選擇Run->Run Module命令)!

運行執行結果如下:

技術分享圖片

Tab按鍵的使用:

(1)縮進。

(2)IDIE後提供一些建議,例如輸入pr 按下TAB鍵會顯示所有可能的命令供你參考。

程序的講解:

  python不像是C-like(一切語法類似於c語言的編程語言),不難發現,在上面程序中沒有變量的聲明,也沒有任何大括號,而是用縮進來表示即可。“==”大多是表示判斷是否相等,“=”表示賦值。用戶輸入數據,input返回用戶輸入的數據給temp。python裏的變量是沒有分類型的,在這裏input返回的是一個字符串變量。下一條語句把數據轉化為整型。接下來進行if-else語句的判斷,如果guess的值為8,那麽則執行if條件成立下縮進裏面的內容。

***********

二、縮進

***********

  縮進是Python的靈魂。如果在正確的位置輸入冒號(:),IDIE會在下一行自動進行縮進,正如剛才的代碼,在if和else語句後邊加上冒號(:),然後按下回車,第二行開始的代碼會自動進行縮進。

**********

三、BIF

**********

  BIF是Built-in Functions,內置函數的意思。舉幾個例子:

  print()是一個內置函數,只需要直接調用即可,它的功能是”打印到屏幕",就是說把括號裏的內容顯示在屏幕上。

  input()也是一個BIF,它的作用是接收用戶輸入並將其返回,在前方的代碼中,用temp這個變量來接收。

  python的變量是不需要事先聲明的,直接給一個合法的名字賦值,這個變量就生成了。

內置函數列表

  在IDIE中輸入dir(_ _builtins_ _)可以看到Python提供的內置函數列表。(在這裏純小寫的都是BIF)

  技術分享圖片

  help()這個BIF用於顯示BIF的功能描述。舉個例:help(print)

   技術分享圖片

*******************************

四、課時02課後習題及答案

*******************************

測試題:

0. 什麽是BIF?
1. 用課堂上小甲魚教的方法數一數 Python3 提供了多少個 BIF?
2. 在 Python 看來:‘FishC‘ 和 ‘fishc‘ 一樣嗎?
3. 在小甲魚看來,Python 中什麽是最重要的?你贊同嗎?
4. 這節課的例子中出現了“=”和“==”,他們表示不同的含義,你在編程的過程中會不小心把“==”誤寫成“=”嗎?有沒有好的辦法可以解決這個問題呢?
5. 你聽說過“拼接”這個詞嗎?

動動手:

0. 編寫程序:hello.py,要求用戶輸入姓名並打印“你好,姓名!”
例如:
技術分享圖片

1. 編寫程序:calc.py 要求用戶輸入1到100之間數字並判斷,輸入符合要求打印“你妹好漂亮”,不符合要求則打印“你大爺好醜”
例如:
技術分享圖片

答案:

測試題答案:

0. 什麽是BIF?

BIF 就是 Built-in Functions,內置函數。為了方便程序員快速編寫腳本程序(腳本就是要編程速度快快快!!!),Python 提供了非常豐富的內置函數,我們只需要直接調用即可,例如 print() 的功能是“打印到屏幕”,input() 的作用是接收用戶輸入(註:Python3 用 input() 取代了 Python2 的 raw_input(),用法如有不懂請看視頻講解)。
1. 用課堂上小甲魚教的方法數一數 Python3 提供了多少個 BIF?

在 Python 或 IDLE 中,輸入 dir(__builtins__) 可以看到 Python 提供的內置方法列表(註意,builtins 前後是兩個下劃線哦)其中小寫的就是 BIF。如果想具體查看某個 BIF 的功能,比如 input(),可以在 shell 中輸入 help(input),就會得到這個 BIF 的功能描述。哦,答案應該是 68 個,不信你自己數數看。

2. 在 Python 看來:‘FishC‘ 和 ‘fishc‘ 一樣嗎?

不一樣,因為 Python 是一個“敏感的小女孩”,所以不要試圖欺騙她,對 Python 來說,fishc 和 FishC 是完全不同的兩個名字,所以編程的時候一定要當心。不過 Python 會幫助解決可能因此出現的問題,例如只有當標識符已經賦值後(還記得嗎,小甲魚在課堂中說過 Python 的變量是不用先聲明的)才能在代碼中使用,未賦值的標識符直接使用會導致運行時錯誤,所以你很快就可以根據經驗發現此問題。

3. 在小甲魚看來,Python 中什麽是最重要的?你贊同嗎?

縮進!在小甲魚看來,縮進是 Python 的靈魂,縮進的嚴格要求使得 Python 的代碼顯得非常精簡並且有層次(小甲魚閱讀過很多大牛的代碼,那個亂......C語言不是有國際亂碼大賽嘛......)。
所以在 Python 裏對待縮進代碼要十分小心,如果沒有正確地縮進,代碼所做的事情可能和你的期望相去甚遠(就像C語言裏邊括號打錯了位置)。
如果在正確的位置輸入冒號“:”,IDLE 會自動將下一行縮進! 4. 這節課的例子中出現了“=”和“==”,他們表示不同的含義,你在編程的過程中會不小心把“==”誤寫成“=”嗎?有沒有好的辦法可以解決這個問題呢
C語言的話,如果 if( c == 1 ) 寫成 if( c = 1 ),程序就完全不按程序員原本的目的去執行,但在 Python 這裏,不好意思,行不通,語法錯誤!Python 不允許 if 條件中賦值,所以 if c = 1: 會報錯!

5. 你聽說過“拼接”這個詞嗎?

在一些編程語言,我們可以將兩個字符串“相加”在一起,如:‘I‘ + ‘Love‘ + ‘FishC‘ 會得到 ‘ILoveFishC‘,在 Python 裏,這種做法叫做拼接字符串。

動動手答案:

0. 編寫程序:hello.py,要求用戶輸入姓名並打印“你好,姓名!”

# hello.py
yourName = input("請輸入你的名字:")
print("你好," + yourName)

1. 編寫程序:calc.py 要求用戶輸入1到100之間數字並判斷,輸入符合要求打印“你妹好漂亮”,不符合要求則打印“你大爺好醜”

number0 = input("請輸入1到100之間的數字:")
number1 = int(number0)
if 0 <= number1 <= 100 : # 或者這樣寫 if 0 <= number1 & number1 <= 100 :
      print("你妹好漂亮emm")
else:
      print("你大爺好醜~")

if 0 <= number0 <= 100 : 這樣寫是錯的!!!

課時2:用python設計第一個遊戲