SlideShare a Scribd company logo
1 of 43
Python
攻略
[聽說遊戲玩家兄妹要征服幻想世界]
Python是... ?
● 一個強大的程式語言
● 具有簡潔、明確的特性
操作
素人(ビギナー)
先來第一個Hello world
● 打開Notepad++
● 輸入 print("Hello world.")
● 儲存在桌面上 (hello.py)
● 按住shift,在桌面上點右鍵,選[在此處開啟
命令視窗(W)]
● 輸入 python hello.py
● 耶
在互動模式底下的hello world
● 打開cmd(不需要在特定資料夾)
● 輸入 python
● 輸入 print("Hello world.")
基礎
挑戦者(チャレンジャー)
從儲存一些東西開始
● 種類
○ 數字: a = 5.14
○ 字串: poi = "poi"
○ 真假值: test = True
● 運算指定
○ 把b指定給a: a = b
○ 把b+1指定給a: a = b+1
○ 把a+1指定給a: a = a+1
運算
● 數字
○ 加減乘除 1 + 2 - 3*4/2 (會是-3)
○ 取餘數 : 6%5 會是 1 (6除5餘1)
○ 次方 : 3**2 + 4**2 會是 25
● 字串
○ 加法 : "p" + "io" 會是 "poi"
● 真假值
○ and, not, or : True and False 會是 False
註解不是給電腦看的
# blabla
b = 1 # a = 1
# b = 1會執行,a = 1不會執行
想要儲存一個數列
a0 = 5
a1 = 1
a2 = 4
有點冗 怎麼辦?
⇒Python有提供 陣列
想要儲存一個數列
● 如何寫?
假如我們要儲存5, 1, 4,那可以這樣寫:
a = [5, 1, 4]
a[0] = 1 #此時a會是 [1, 1, 4]
b = a[0] + a[1] #此時b會是 2
想要儲存一個數列
● 有中括號,那有沒有小括號?
a = (5, 1, 4)
● 差別在哪?
○ 無法修改陣列元素
想要不只用數字當作編號?
想要這樣寫?
a["poi"] = 1
⇒ Python裡面有提供字典類型!!
想要不只用數字當作編號?
● 怎麼寫?
假如想要讓a["poi"]是"poi",a["poi2"]是"iod",
那可以這樣:
a = {"poi" : "poi", "poi2" : "iod"}
讓我們來印一些東西吧
print("hello world")
● hello world → 印一個字串
● 印一個變數?
讓我們來印一些東西吧
● 單一變數
a = 1
print(a) # 印出1
● 運算結果
a = 2
b = 2
print(a+b) # 印出4
有輸出 怎麼能沒有輸入呢@@
a = input()
● 印出一個剛剛輸入的東西
inp = input()
print(inp)
流程
熟練者(エキスパート)
縮排 : Notepad++設定
● Tab展開成4個空白的設定
○ 打開Settings/Preferences
○ 點Language Menu/Tab Settings
○ 點Replace by space
判斷一些東西
判斷一個真假值
True
False
做一些事情
做一些事情
判斷一些東西
真假值派上用場啦!!
if [真假值] :
[縮排]…
判斷一些東西
Example1 : 判斷分數是否超過60分
score = 60
if score >= 60 :
print("pass the test")
判斷一些東西
Example2 : 判斷分數是否超過60分
score = 59
if score >= 60 :
print("pass the test")
else :
print("fail the test")
重複跑的部分
print(a[0])
print(a[1])
…
print(a[9])
太冗啦
重複跑的部分 -- for
● 依序枚舉陣列裡的變數
for [變數名稱] in [陣列]:
[縮排]…
重複跑的部分 -- for
Example1 : 印出陣列裡面所有元素
arr = [1, 2, 3, 5, 8, 514]
for val in arr:
print(val)
重複跑的部分 -- for
Example2 : 把陣列裡面的元素進行加總
arr = [1, 2, 3, 5, 8, 514]
sum = 0
for val in arr:
sum = sum + val
print(sum)
小練習
● expert/problem/test2.py
重複跑的部分 -- while
判斷一個真假值
做一些事情
True
False
重複跑的部分 -- while
● 重複做一件事情,直到某真假值為False
while [真假值] :
[縮排]…
重複跑的部分 -- while
Example : 輸出 1**1.5 加到 100**1.5
i = 1
sum = 0
while i <= 100:
sum = sum + i**1.5
i = i + 1
print(sum)
呼叫一個函數
● 丟進一些變數,得到一些東西
像是:
a = abs(-1)
就是丟進 數字 -1,這函數幫你取他的絕對值
引入一些函數
import [函數包名稱]
● 數學函數
○ eg: sqrt
● 擲骰子函數
○ randint
○ randrange
撰寫一個函數
自行寫函數可能可以適當的縮短程式碼。
def [函數名稱]([參數名稱1], [參數名稱2] ..):
[縮排]…
[縮排]return [函數回傳值]
撰寫一個函數
Example : 寫一個函數sum,傳進三個數字,回
傳他們的和
def sum(a, b, c):
return a+b+c
雜項
国王(グランドマスター)
打包一些變數和函數
想要定義這種東西:
a的x = 1
a的y = 2
⇒Python裡面提供類別
打包一些變數和函數
class [類別名稱]:
[縮排]def __init__(self, [參數1], [...]):
[縮排][縮排]…
[縮排]def [函數名稱1](self, [參數1], [參數2]):
[縮排][縮排]…
打包一些變數和函數
Example : 定義二維平面上的 Point
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
打包一些變數和函數
Example : 定義二維平面上的 Point
那要怎麼用我們定出的類別?
p1 = Point(1, 2) # 建立一個x是1,y是2的Point
p1.x = 2 #修改p1的x為2
打包一些變數和函數
Example : Point要有距離原點長度的函數
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
def len(self):
return (x**2 + y**2)**0.5
打包一些變數和函數
Example : 呼叫len
a = Point(3, 4)
print(a.len()) #印出5.0
查詢是否在陣列或字典裡
Example : 假如有個陣列a,那我們要怎麼確認3
是否在裡面?
flag = 3 in a

More Related Content

Viewers also liked

Isd upload
Isd uploadIsd upload
Isd uploadenurleni
 
Молодь проти насильства
Молодь проти насильстваМолодь проти насильства
Молодь проти насильстваEretr Wer
 
RAILWAY BUDGET
RAILWAY BUDGETRAILWAY BUDGET
RAILWAY BUDGETmdindia786
 
3000tuphienamvagiainghia
3000tuphienamvagiainghia3000tuphienamvagiainghia
3000tuphienamvagiainghiaChí Thành
 
2014 NNEST EVO
2014 NNEST EVO2014 NNEST EVO
2014 NNEST EVOafselvi
 

Viewers also liked (7)

Isd upload
Isd uploadIsd upload
Isd upload
 
Молодь проти насильства
Молодь проти насильстваМолодь проти насильства
Молодь проти насильства
 
RAILWAY BUDGET
RAILWAY BUDGETRAILWAY BUDGET
RAILWAY BUDGET
 
3000tuphienamvagiainghia
3000tuphienamvagiainghia3000tuphienamvagiainghia
3000tuphienamvagiainghia
 
2014 NNEST EVO
2014 NNEST EVO2014 NNEST EVO
2014 NNEST EVO
 
Emperesse fine pearl earrings
Emperesse   fine pearl earringsEmperesse   fine pearl earrings
Emperesse fine pearl earrings
 
Bursa
BursaBursa
Bursa
 

Recently uploaded

法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个michaelell902
 
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习PUAXINYEEMoe
 
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdftaibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdfjhujyunjhang
 
taibif_資料標準概念介紹_20240509_20240509_20340509.pdf
taibif_資料標準概念介紹_20240509_20240509_20340509.pdftaibif_資料標準概念介紹_20240509_20240509_20340509.pdf
taibif_資料標準概念介紹_20240509_20240509_20340509.pdfjhujyunjhang
 
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂PUAXINYEEMoe
 
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptxbusinesshealthwise
 
1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...
1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...
1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...微信 tytyqqww业务接单
 
Math Chapter3-教學PPT第03單元形體關係、體積與表面積Grade Six
Math Chapter3-教學PPT第03單元形體關係、體積與表面積Grade SixMath Chapter3-教學PPT第03單元形體關係、體積與表面積Grade Six
Math Chapter3-教學PPT第03單元形體關係、體積與表面積Grade Six611002610
 
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...微信 tytyqqww业务接单
 

Recently uploaded (9)

法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
法国蒙彼利埃国家高等建筑学院毕业证制作/德语歌德B1证书/加拿大新斯科舍省农业学院文凭加急制作一个
 
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
10.2.1 马来西亚各州名称的由来六年级历史单元练习马来西亚各州名称的由来练习
 
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdftaibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
taibif_開放資料流程-清理資料01-通則_20240509_20240509.pdf
 
taibif_資料標準概念介紹_20240509_20240509_20340509.pdf
taibif_資料標準概念介紹_20240509_20240509_20340509.pdftaibif_資料標準概念介紹_20240509_20240509_20340509.pdf
taibif_資料標準概念介紹_20240509_20240509_20340509.pdf
 
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
1.1.3急救你必须懂四年级设计与工艺练习活页练习单元一四年级设计与工艺急救你必须懂
 
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
啟思中國語文 - 中二 單元一 - 孟嘗君列傳 - 記敍的方法和人稱1.pptx
 
1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...
1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...
1.🎉成绩单,你的成绩! 💡🔥每个人都有自己的成绩单,它记录着我们努力的成果。但有时候,看着这些数字,却发现它们好像在嘲笑我?别担心,让我来告诉你们怎么改...
 
Math Chapter3-教學PPT第03單元形體關係、體積與表面積Grade Six
Math Chapter3-教學PPT第03單元形體關係、體積與表面積Grade SixMath Chapter3-教學PPT第03單元形體關係、體積與表面積Grade Six
Math Chapter3-教學PPT第03單元形體關係、體積與表面積Grade Six
 
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
1.🎉“黑客”如何修改成绩?🤔🎉 在这个信息爆炸的时代,我们经常会看到各种作弊手段。但是你知道吗?有一种作弊方式可能比你想象中更巧妙:它就是——黑客![单...
 

Python攻略

Editor's Notes

  1. 30down mins,需要學員操作
  2. 和註解總共 5 mins
  3. 和字典夾起來共10 mins
  4. 40 mins
  5. 10 mins