Python 新手村
用 Python 打造你的遊戲
2020
小草、RexWu
Part 1 - 勇者,開始冒險吧!
開始之前
Who Am I ?
- RexWu
- 19歲
- 海大資工 大一生
- Python、Django
- Maker、IoT
- 生存遊戲
- 酒精研究 (X
10-sec of
安裝 Zoom (桌面分享)
喚起記憶!
先來複習一下上週學到的東西
print( 文字 )
輸出括號中的文字
print("Hello, World!")
變數名稱 = 資料
變數,用來存放等號後面的資料,並給它一個名字
# 正確
name = "小草"
age = 20
# 錯誤
1name = "小草"
a g e = 20
提醒:變數名稱開頭不能是數字、不能有空格
文字要用引號(單雙皆可)包起來
文字相加
欸嘿,試試看吧
name = "小草"
print("Hello, " + name + "!")
重複的文字
文字也可以做乘法呢
text = "阿密陀佛"
print(text * 3)
input()
取得輸入資料並存在一個變數裡
name = input("請告訴我你的名字:")
提示:括號內可以放提示文字
資料的型態
num = 10
name = 'Rex'
print(num)
print(name)
print(num + name)
str() => 字串、int() => 整數
if / else
條件判斷
if( 條件 ): / elif( 條件 ): / else:
括號(可省略)裡面放條件,冒號後換行放符合條件要做的事
grade = input("請輸入成績:")
if grade >= 80:
print("A")
elif grade >= 60:
print("B")
else:
peinr("F")
if( 條件 ): / elif( 條件 ): / else:
if 就可以做條件判斷,那... elif 的作用是... ?
grade = input("請輸入成績:")
if grade >= 80:
print("A")
if grade >= 60:
print("B")
else:
peinr("F")
if 的條件
# 大小比較
age < 16
age == 20
age >= 87
# 字串相等
name == "小草"
name != "小草"
相等需要兩個等號
if 的條件(cont.)
# 多條件
name == "小草" and age > 20
name == "Rex" or name == "小草"
not name == "Rex"
# 同等於
name != "Rex"
作業解答
輸入一個名字和年齡
如果名字與年齡與你相符
輸出"沒錯,就是你!"
如果年齡小於或等於12歲
輸出 輸入的名字 + "你還太小不要用電腦"
不符合上述條件
輸出 輸入的名字 + "不要亂用我的電腦"
name = input("輸入你的名字?")
age = int(input("你年紀多大?"))
if name == "Rex" and age == 20:
print("沒錯,就是你")
elif age <= 12 :
print(name + "你還太小不要用電腦")
else:
print(name + "不要亂用我的電腦")
新的一章
文字的魔法
文字的隱形斗蓬—程式註解
想在程式碼中留下筆記 或是
有部分程式碼要跳過,要怎麼辦呢?
print('大家好,我是一串文字!')
#大家好,我是一串不會被執行的灰色註解文字
"""
大家好
我是一串
跨了好多行的
註解文字
"""
特殊的文字—跳脫字元
\\ 反斜線符號 (\)
\' 單引號 (')
\" 雙引號 (")
\n 換⾏符號 (LF)
有些東西不能直接打出來要怎麼辦?
其他的跳脫字元
\\ 反斜線符號 (\)
\' 單引號 (')
\" 雙引號 (")
\a 響鈴符號 (BEL)
\b 空格符號 (BS)
\f 換⾴符號 (FF)
\n 換⾏符號 (LF)
\r 返回符號 (CR)
\t ⽔平縮排符號 (TAB)
\v 垂直跳格符號 (VT)
\ooo ooo 是三個⼋進位的數字
\xhh hh 是兩個⼗六進位的數字
試試看
print('菜單:')
print('1.漢堡')
print('2.吐司')
print('3.蛋餅')
print('4.鐵板麵')
print('5.奶茶/紅茶')
breakfast = input('老闆娘說,同學今天想吃什麼?:')
早八上課前去學餐買早餐,你會看到...
再試試看
breakfast = input('菜單:\n1.漢堡\n2.吐司\n3.蛋餅\n4.鐵板麵\n5.奶茶/紅茶\n老闆娘說,同學今天想吃什麼?:')
打了好多的「print」有沒有覺得有點麻煩?
有沒有覺得省了不少 print 呢?
挑戰
請用剛剛買早餐的情境
加上 if /elif / else
設計接下來的內容
etc. 老闆娘的回應(確認餐點+金額)
breakfast = input('菜單:\n1.漢堡\n2.吐司\n3.蛋餅\n4.鐵板麵\n5.奶茶/紅茶\n老闆娘說,同學今天想吃什麼?:')
if breakfast == '1':
print('漢堡一份 35 元 謝謝')
elif breakfast == '2':
print('吐司一份 30 元 謝謝')
elif breakfast == '3':
print('蛋餅一份 25 元 謝謝')
elif breakfast == '4':
print('鐵板麵一份 40 元 謝謝')
elif breakfast == '5':
print('奶茶/紅茶一杯 20 元 謝謝')
範例
冒險的第二章
程式中的方程式
數學運算子
運算的道具
x = 30
y = 25
print(x + y) #加法
print(x - y) #減法
print(x * y) #乘法
print(x / y) #除法
print(x % y) #餘數除法
print(x ** y)#次方
數學運算子遇上變數的變化
運算的道具
x = 30
y = 25
x = x + y
print(x)
x = x - y
print(x)
x = x * y
print(x)
x = x / y
print(x)
將上一個挑戰,加上剛剛的數學運算子做一點變化
挑戰
你可以這麼做
先問要吃什麼東西
再問要喝什麼飲料
最後 輸出兩樣價錢的總和
範例
total = 0
breakfast = input('菜單:\n1.漢堡\n2.吐司\n3.蛋餅\n4.鐵板麵\n老闆娘說,同學今天想吃什麼?:')
if breakfast == '1':
total = total + 35
print('漢堡一份')
elif breakfast == '2':
total = total + 30
print('吐司一份')
elif breakfast == '3':
total = total + 25
print('蛋餅一份')
elif breakfast == '4':
total = total + 40
print('鐵板麵一份')
drink = input('1.奶茶\n2.紅茶\n3.柳橙汁\n要喝什麼飲料?:')
if drink == '1':
total = total + 25
elif drink == '2':
total = total + 20
elif drink == '3':
total = total + 30
print('這樣一共 ' + str(total) + ' 元 謝謝')
開始文字冒險遊戲世界吧!
補充—程式時間凍結
利用 time.sleep( n秒 ) 可以讓程式暫停 n秒
import time #導入時間的功能
times = input('請輸入等待時間:')
time.sleep(times)
print('等待了 ' + times + ' 秒')
挑戰/作業
自己設計一個小小的冒險遊戲
或是
設計一個小測驗
可以 Google 搜尋 「測驗 跳題」
找現有的心理測驗製作成 互動式的測驗
The End
結束惹,來點個名吧
Tronclass 數字點名:
1921
Python 新手村 2020 Part 1
By Rex Wu
Python 新手村 2020 Part 1
- 327