成功高中電研教學
暱稱:你。
學術力:Html-Css-Javascript Python C++(都只會一點點)
個性:隨和(?
興趣:看小說
專長:跟最認真學子 蔡昀熹 下象棋
這裡可以直接下載
這裡可以選擇版本
按下"Download"後便會開始ㄉㄤ ㄌㄡˋ
之後點擊它
按下"Upgrade Now"
開始裝到電腦
成功下載完了
這裡可以寫程式
程式寫好後按這裡執行
1: 輸出 print()
2: 變數宣告&資料型態
3: 註解
4: 輸入 input()
5: f-string
6: map input()
7: 運算
8: 邏輯運算
9: list-set-tuple
10: len()、sum()、max()、min()、in、not in
11: dict
12: for-while & break,pass,continue
print("Hello world")
print()
"Hello world"
輸出 () 內的東西
"Hello world" 這個字串
幫我輸出:
Hi!
輸入:
無
輸出:
1min
print("Hi!")
print("Hi!")
輸出
Hi!
print("apple","bag","cat")
在輸出多個字串時,
每個要輸出的字串用「,」分隔
執
行
結
果
print("apple","bag","cat",sep=" ")
print("apple","bag","cat",sep="---")
執行結果
sep=""
可以讓你在字串間放入
"" 中的東西
執行結果
幫我輸出:
你~~~我~~~他
使用 sep=""
輸入:
無
輸出:
2min
print("你","我","他",sep="~~~")
sep""之間放入~~~
作為字串間的分隔字
print("apple")
print("big")
print("cat")
當你把print寫成三行後,
他也會輸出三行。
執行結果
print("apple",end="***")
print("big",end="***")
print("cat",end="***")
print("apple",end="\n")
print("big",end="\n")
print("cat",end="\n")
end=""
讓你可以在一行字的尾部,
加上" "的東東
執行結果
執行結果
幫我輸出:
A~~~B~~~C~~~
使用 end=""
輸入:
無
輸出:
5min
print("A",end="~~~")
print("B",end="~~~")
print("C",end="~~~")
分成三行print(),
把end=""中設為~~~
資料型態 | What? | 程式中: |
---|---|---|
數值型態 | 整數(1、2、3......) | 整數 int |
數值型態 | 小數(1.1、1.2、1.5......) | 浮點數 float |
數值型態 | 真、假(True、False) | 布林 bool |
字串型態 | 字串(Hello、Hi、Meow) | 字串 string |
字串型態 | 字元(a,b,c,d,e,f,g) | 字元 char |
容器型態 | 字典 | dict |
容器型態 | 清單 | list |
容器型態 | 元組 | tuple |
容器型態 | 集合 | set |
語法: 變數名(x,y,n,m......) = 變數值
a = 100
b = 3.14
c = "hello world"
d = True
e = False
但是有一些字不能拿來當變數名稱
False、None、True、and、as、assert、async、await、break、class、continue、def、del、elif、else、except、finally、for、from、global、if、import、in、is、lambda、nonlocal、not、or、pass、raise、return、try、while、with、yield.
這些字稱為 保留字
a = 100
b = 3.14
c = "hello world"
d = True
e = False
print(a)
print(type(a))
print(b)
print(type(b))
print(c)
print(type(c))
print(d)
print(type(d))
print(e)
print(type(e))
執行結果
先宣告變數
印出變數
輸出變數型態
type()
輸出變數的資料型態
x = 1
int_x = int(x)
float_x = float(x)
str_x = str(x)
bool_x=bool(x)
print(int_x,type(int_x))
print(float_x,type(float_x))
print(str_x,type(str_x))
print(bool_x,type(bool_x))
先宣告變數
把變數型態改變
整數 : int()
浮點數 : float()
字串 : str()
布林值 : bool()
最後輸出
變數
變數的資料型態
執行結果
T = True
F = False
print(T,type(T))
print(F,type(F))
print("")
int_T = int(T)
int_F = int(F)
print(int_T,type(int_T))
print(int_F,type(int_F))
print("")
float_T = float(T)
float_F = float(F)
print(float_T,type(float_T))
print(float_F,type(float_F))
print("")
str_T = str(T)
str_F = str(F)
print(str_T,type(str_T))
print(str_F,type(str_F))
先宣告變數
印出變數
變數型態
把變數型態改變
整數 : int()
浮點數 : float()
字串 : str()
最後輸出
變數
變數的資料型態
執行結果
True = 1
False = 0
這是單行註解喔
把你想註解的程式碼
「框」起來後,
按下 Ctrl + /
就可以一次註解多行程式碼啦~
目前使用的 online gdb 可以這個
但不是所有的環境都可以(老舊的不一定行)
x=input()
print(x)
1.把 x 設置為input()
2.print出x
執行結果
第一行程式碼中的輸入
print 出的 x
幫我輸入 x、y、z後,
輸出 x
輸出 y
輸出 z
範例輸入:
範例輸出:
5min
x=input()
y=input()
z=input()
print(x)
print(y)
print(z)
把 x y z 都設為 input() 後,
依序輸出 x y z
x=input()
print(x,type(x))
1.把 x 設置為input()
2.print出 x 和 x 的資料型態
執行結果
為什麼我輸入整數,
但型態卻不是 int整數 而是 string字串 呢?
x=int(input())
print(x)
print(type(x))
1.把 x 設置int(input())
(用int包著input(),把型態從string轉換成int)
2.print出 x
3.print出 x 的資料型態
執行結果
這裡可以看到,
他的資料型態已經變成int了。
幫我輸入 x(1)、y(1.5)後,
輸出 x 和 x 的資料型態(限定int)
輸出 y 和 y 的資料型態(限定float)
範例輸入:
範例輸出:
5min
x=int(input())
y=float(input())
print(x,type(x))
print(y,type(y))
把 x、y 的 input() 型態設置為 int 和 float 後
輸出 x , x 的型態type(x)
輸出 y , y 的型態type(y)
x=10
y=20
print(f"x={x},y={y}")
可以看到,這裡把 f 放到了" "的前面
執行結果
先把 x 設為 10
y 設為20
因為 f
字串間可以使用 {} 來把 x、y...變數放入
x=10
y=20
print(f"x={x},y={y}")
x=10
y=20
print("x={x},y={y}")
執行結果
執行結果
a,b,c,d,e = map(int,input().split())
print(a)
print(b)
print(c)
print(d)
print(e)
input() 的資料型態
把 input() 以 .split(~) 括號內做分割
沒放默認為空白
執行結果
輸入
輸出
a
b
c
d
e
幫我輸入 a b c 後
輸出:
a = ?
b = ?
c = ?
範例輸入:
範例輸出:
5min
a,b,c=map(int,input().split())
print(f"a = {a}")
print(f"b = {b}")
print(f"c = {c}")
用 map input() 在一行內輸入完變數後
利用 f-string 語法輸出
符號 | means | 運算 |
---|---|---|
+ | 相加 | 1+1=2、1+2=3、2+3=5 |
- | 相減 | 2-1=1、3-2=1、5-2=3 |
* | 相乘 | 2*2=4、3*5=15、4*6=24 |
/ | 相除 | 6/3=2、5/3=1.66666、10/7=1.42857 |
** | 指數運算 | 2**2=4、2**3=8、3**2=9 |
// | 相除取整數 | 6//3=2、5//3=1、20//7=2 |
% | 相除取餘數 | 6%3=0、5%3=2、20%7=6 |
x=5
y=3
print("x+y=",end="")
print(x+y)
print("x-y=",end="")
print(x-y)
print("x*y=",end="")
print(x*y)
print("x/y=",end="")
print(x/y)
print("x**y=",end="")
print(x**y)
print("x//y=",end="")
print(x//y)
print("x%y=",end="")
print(x%y)
先指定 x y
印出 x , y 的運算
但是這樣程式好長喔,
感覺打了一堆重複的東西
執行結果
x=5
y=3
print(f"x+y={x+y}")
print(f"x-y={x-y}")
print(f"x*y={x*y}")
print(f"x/y={x/y}")
print(f"x**y={x**y}")
print(f"x//y={x//y}")
print(f"x%y={x%y}")
利用 f-string
讓他可以在""中處理運算
執行結果
原始式子 | 簡寫 | 運算 |
---|---|---|
x = x + 5 | x += 5 | 10 + 5 = 15 |
x = x * 5 | x *= 5 | 10 * 5 = 50 |
x = x - 5 | x -= 5 | 10 - 5 = 5 |
設 x = 10
意思就是
x = 自身 +-*/ 某數
幫我輸入 x、y、z後,
輸出x-y+z
輸出x+y*z
利用f-string
範例輸入:
範例輸出:
5min
x,y,z = map(int,input().split())
print(f"{x}-{y}+{z}={x-y+z}")
print(f"{x}+{y}*{z}={x+y*z}")
把 x y z 都設為 input() 後,
利用f-string處理
x、y、z
x-y+z、x+y*z
幫我算到小數第3位、第5位...
x=5
y=3
print(f"{x}")
print(f"x={x}, y={y}")
print(f"{x} / {y} = {x/y}")
print(f"{x} / {y} = {x/y:.2f}")
print(f"{x} / {y} = {x/y:6.2f}")
執行結果
print(f"{x} / {y} = {x/y}")
print(f"{x} / {y} = {x/y:.2f}")
print(f"{x} / {y} = {x/y:6.2f}")
{x/y:.2f} 小數點後2位
{x/y:6.2f} 6->總共六位數,.2f小數點後2位
輸出
20除7,到小數第7位
20除7,到小數第3位,總共7位數
範例輸入:
無
範例輸出:
5min
print(f"20 / 7 = {20/7:.7f}")
print(f"20 / 7 = {20/7:7.3f}")
用:.7f 設置為小數第7位
:7.3f 設置7位數,小數第3位
x=5
y=3
x=y
y=x
print(f"x = {x}")
print(f"y = {y}")
執行結果
這種作法無法互換x,y的值
因為當x=y之後
x就已經是y的值了
x=5
y=3
temp=x
x=y
y=temp
print(f"x = {x}")
print(f"y = {y}")
執行結果
所以需要先創建一個新變數(temp)
來存x的值
x=5
y=3
x,y=y,x
print(x,y)
1st 先設定好 x 、 y
2nd x , y = y 的值(3) , x 的值(5)
印出 x、y
如此
x=y的值(3)
y=x的值(5)
執行結果
x,y=y,x
對應的位置對到對應的值
輸入整數 x、y、z
讓x=y,y=z,z=x後
輸出 x、y、z
範例輸入:
範例輸出:
5min
x,y,z = map(int,input().split())
x,y,z=y,z,x
print(x,y,z)
先把 x、y、z設為整數輸入
接著,讓x,y,z=y的值,z的值,x的值
最後,輸出 x y z
x,y,z=y,z,x
x 對應到 y 的值
y 對應到 z的值
z 對應到 x的值
如果......
就做......
if(True):
print("True")
如果()內是真的話,
就做print("True")
記得要縮排(按下鍵盤 Tab )
執行結果
if(True):
print("True")
else:
print("False")
if(False):
print("True")
else:
print("False")
如果(True)
執行A
否則
執行B
執行結果
執行結果
if(True):
print("A")
elif(True):
print("B")
else:
print("C")
if(False):
print("A")
elif(True):
print("B")
else:
print("C")
如果(True)
執行A
否則如果(False)
執行B
否則
執行C
執行結果
執行結果
括弧內真的只能放True/False嗎?
符號 | 意思 | 比較 | 回傳 | 說明 |
---|---|---|---|---|
> | 大於 | x > y | True | 10大於5 是真的 |
< | 小於 | x < y | False | 10小於5 是假的 |
>= | 大於或等於 | x >= y | True | 10大於或等於5 是真的 |
<= | 小於或等於 | x <= y | False | 10小於或等於5 是真的 |
== | 等於 | x == y | False | 10等於5 是假的 |
!= | 不等於 | x != y | True | 10不等於5 是真的 |
設:
x=10 , y=5
x=10
y=5
if(x>y):
print("x>y")
if(x<y):
print("x<y")
if(x>=y):
print("x>=y")
if(x<=y):
print("x<=y")
if(x==y):
print("x==y")
if(x!=y):
print("x!=y")
x > y
x >= y
x != y
都為真,
所以會輸出
x > y、x >= y、x != y
執行結果
當我輸入 x、y後
幫我判斷兩者是
x>y、x<y 還是 x=y 後輸出
範例輸入:
範例輸出:
5min
x,y = map(int,input().split())
if(x==y):
print(f"{x} = {y}")
elif(x>y):
print(f"{x} > {y}")
else:
print(f"{x} < {y}")
如果 x 等於 y (x==y)
輸出 x=y
否則如果 x 大於 y (x>y)
輸出 x>y
否則
輸出 x<y
x 不等於 y
也不大於 y
設:
T = True、F = False
意思 | 判斷 | 回傳 | 說明 | |
---|---|---|---|---|
and | 且 (兩者都需符合) | T and F | False | T F 中只有 T 是真 |
or | 或 (僅需一者符合) | T or F | True | T F 中 T 是真 |
not | 不 | not T | False | 不是真的 --> 假的 |
T=True
F=False
if(T and F):
print("T and F = True")
else:
print("T and F = False")
if(T or F):
print("T or F = True")
else:
print("T or F = False")
if(not T):
print("not T = True")
else:
print("not T = False")
if(not F):
print("not F = True")
else:
print("not F = False")
設: T = 真、F = 假
T 且 F = 假
T 或 F = 真
不 T = 假
不 F = 真
執行結果
當我輸入 x 後
幫我判斷今天是不是周末(6、7)
並輸出
範例輸入:
x 限定 1~7
範例輸出:
5min
x=int(input())
if(x==6 or x==7):
print("是周末")
else:
print("不是周末")
如果 x 等於 6 或者等於 7
輸出 是周末
否則
輸出 不是周末
Firstlist = ["apple", "big", 1, 2, 3, [1,2,3]]
list中的值
可以是字串
可以是數字
也可以是另一個list......
numberlist = [1,2,3,4,5,6,7,8]
print(numberlist)
print(type(numberlist))
print(numberlist[0])
print(numberlist[4])
name_list[數字]
numberlist 中的 第數字格
執行結果
格數: 0 1 2 3 4 5 6 7
inputlist = list(map(int,input().split()))
print(inputlist)
運用map輸入法分割輸入
再轉型成list
執行結果
輸入:
輸出:
給你這段程式:
輸入:
輸出:
numberlist = [1,2,3,4,5,6,7,8,9,10]
幫我輸出
1 3 5 7 9
2 4 6 8 10
無
5min
numberlist = [1,2,3,4,5,6,7,8,9,10]
print(numberlist)
print(numberlist[0:5])
print(numberlist[0:5:2])
print(numberlist[-1])
print(numberlist[0:-2])
從 a 格到 b 格前: [a:b]
從 a 格到 b 格前, 間格c : [a:b:c]
*從後面數過來第 a 格: [-a]
執行結果
給你這段程式:
輸入:
輸出:
numberlist = [1,2,3,4,5,6,7,8,9,10]
幫我輸出
[1, 3, 5, 7, 9]
[2, 4, 6, 8, 10]
使用[a : b : c]
無
5min
numberlist = [1,2,3,4,5,6,7,8,9,10]
print(numberlist[::2])
print(numberlist[1::2])
[ : :2]
因為沒限定初始格到結束格
所以默認從第零格到最後一格
[1: :2]
沒限定結束格
所以從第一格到最後一格
numberlist=[1,2,3,4,5,6,7,8,9]
print(numberlist)
v.s
numberlist=[1,2,3,4,5,6,7,8,9]
print(*numberlist)
numberlist1 = [1,2,3,4,5]
print(numberlist1)
numberlist1.append(6)
print(numberlist1)
numberlist2 = [1,2,3,4,5]
print(numberlist2)
numberlist2.extend([6,7,8])
print(numberlist2)
numberlist3 = [1,2,3,4,5]
print(numberlist3)
numberlist3.insert(3,9)
print(numberlist3)
.append( a )
在尾部增加值 a
.extend([ a,b,c...... ])
在尾部增加值 a b c...
.insert( a,b )
在 a 格增加 b 值
其他往後推
numberlist1 = [1,1,2,2,3,3,4,4,5,5]
print(numberlist1)
del numberlist1[3]
print(numberlist1)
del numberlist1[1:8:2]
print(numberlist1)
numberlist2 = [1,2,3,4,5]
print(numberlist2)
numberlist2.pop()
print(numberlist2)
numberlist2.pop(2)
print(numberlist2)
del name_list[數字]
刪除對應的格子
.pop( a )
刪除 a 格
如果沒放,就是刪除最後一格
numberlist3 = [2,1,2,3,2,3]
print(numberlist3)
numberlist3.remove(2)
print(numberlist3)
.remove( a )
刪除最先出現的 a 值
numberlist1 = [3,1,4,1,5,9]
print(numberlist1)
numberlist1.reverse()
print(numberlist1)
numberlist2 = [3,1,4,1,5,9]
print(numberlist2)
numberlist2.sort()
print(numberlist2)
.reverse()
把 list 反轉
.sort()
由小到大排序
給你這段程式:
輸入:
輸出:
numberlist = [3,1,4,1,5,9,2,6,5,4,5]
幫我輸出
[6, 5, 5, 5, 4, 4, 3, 2]
無
5min
numberlist = [3,1,4,1,5,9,2,6,5,4,5]
numberlist.remove(9)
numberlist.remove(1)
numberlist.remove(1)
numberlist.sort()
numberlist.reverse()
print(numberlist)
2~4行把數字刪除後
再把它由小到大排序
之後反轉
Firsttuple = (1,2,3,4,5)
tuple 跟 list 差不多
不過 tuple 不能被修改
不能新增、刪除值到 tuple 中
記得,宣告tuple是用 () 喔~~
Firsttuple = (1,2,3,4,5)
print(Firsttuple)
print(type(Firsttuple))
print(Firsttuple[::2])
其實
tuple 的輸出跟 list 都差不多
name_tuple[數字]
執行結果
格數: 0 1 2 3 4
Firstset = {2,2,1,1,5,7,5,8,4,5,7}
set 中不含重複的資料
記得,宣告set是用 {} 喔~~
Firstset = {2,2,1,1,5,7,5,8,4,5,7}
print(Firstset)
print(type(Firstset))
set 跟 list 差蠻多的
set 沒有 "格子" 的概念
它就是一個集合
執行結果
numberset1 = {1,2,3}
numberset1.add(0)
print(numberset1)
numberset2 = {1,2,3}
numberset2.update({0,3,4,5,6,9,8,7})
print(numberset2)
.add( a )
增加 a 到 set 中
.update({ x })
新增 x 到 set 中
x 可以是多筆資料
numberset1 = {1,2,3,4,5}
print(numberset1)
numberset1.remove(3)
print(numberset1)
.remove( a )
刪除 set 中的 a
setA
setB
聯集(or)
交集(and)
差集
對稱差集
聯集: union() 、 setA | setB
setA = {1, 6, 8, 10, 20}
setB = {1, 3, 8, 10}
print("聯集")
print(setA.union(setB))
print(setA | setB)
print("")
print("交集")
print(setA.intersection(setB))
print(setA & setB)
print("")
print("差集")
print(setA.difference(setB))
print(setA - setB)
print("")
print("對稱差集")
print(setA.symmetric_difference(setB))
print(setA ^ setB)
交集: intersection() 、 setA & setB
差集: difference() 、 setA - setB
對稱差集: symmetric_difference() setA - setB
setA = {1, 6, 8, 10, 20}
setB = {1, 3, 8, 10}
print("聯集")
print(setA.union(setB))
print(setA | setB)
print("")
print("交集")
print(setA.intersection(setB))
print(setA & setB)
print("")
print("差集")
print(setA.difference(setB))
print(setA - setB)
print("")
print("對稱差集")
print(setA.symmetric_difference(setB))
print(setA ^ setB)
執行結果
回傳長度
numberlist=[1,2,3,4,5]
numberset={1,2,3,4,5,6,7}
numbertup=(1,2,3,4,5,6,7,8,9)
stringA="Hello world"
print(f"len(numberlist) = {len(numberlist)}")
print(f"len(numberset) = {len(numberset)}")
print(f"len(numbertup) = {len(numbertup)}")
print(f"len(stringA) = {len(stringA)}")
回傳加總
numberlist=[1,2,3,4,5]
numberset={1,2,3,4,5,6,7}
numbertup=(1,2,3,4,5,6,7,8,9)
print(f"sum(numberlist) = {sum(numberlist)}")
print(f"sum(numberset) = {sum(numberset)}")
print(f"sum(numbertup) = {sum(numbertup)}")
回傳最大值
numberlist=[1,2,3,4,5]
numberset={1,2,3,4,5,6,7}
numbertup=(1,2,3,4,5,6,7,8,9)
print(f"max(numberlist) = {max(numberlist)}")
print(f"max(numberset) = {max(numberset)}")
print(f"max(numbertup) = {max(numbertup)}")
回傳最小值
numberlist=[1,2,3,4,5]
numberset={1,2,3,4,5,6,7}
numbertup=(1,2,3,4,5,6,7,8,9)
print(f"min(numberlist) = {min(numberlist)}")
print(f"min(numberset) = {min(numberset)}")
print(f"min(numbertup) = {min(numbertup)}")
判斷是否在其中
numberlist=[1,2,3,4,5]
numberset={1,2,3,4,5,6,7}
numbertup=(1,2,3,4,5,6,7,8,9)
L = -1 in numberlist
S = 0 in numberset
T = 1 in numbertup
print(f"-1 in numberlist is {L}")
print(f"0 in numberset is {S}")
print(f"1 in numbertup is {T}")
回傳: 布林值 (True False)
判斷是否不在其中
numberlist=[1,2,3,4,5]
numberset={1,2,3,4,5,6,7}
numbertup=(1,2,3,4,5,6,7,8,9)
L = -1 not in numberlist
S = 0 not in numberset
T = 1 not in numbertup
print(f"-1 not in numberlist is {L}")
print(f"0 not in numberset is {S}")
print(f"1 not in numbertup is {T}")
回傳: 布林值 (True False)
還記得 map(int,input().split()) 嗎?
這個程式可以幫你分割你在一行內的輸入
還記得怎麼轉換變數型態嗎?
可以使用 int、str、......把變數型態改變
list( map( int , input().split() ) )
First:
輸入,之後分割輸入
1
1
1
9
5
7
3
2
4
6
8
Second:
把分割後的
"str"資料型態改成int
Last:
把這些數字變成list
numberlist=list(map(int,input().split()))
numberset=set(map(int,input().split()))
numbertup=tuple(map(int,input().split()))
print(f"numberlist is {numberlist}")
print(f"numberset is {numberset}")
print(f"numbertup is {numbertup}")
輸入
輸出
輸入lista
判斷lista的最大值//2有沒有在lista中並輸出
判斷lista的最小值*2有沒有在lista中並輸出
範例輸入:
輸出:
5min
lista=list(map(int,input().split()))
Max_X=max(lista)
Min_X=min(lista)
print(Max_X//2 in lista)
print(Min_X*2 in lista)
用Max_X變數存取lista最大值
Min_X存取lista最小值
最後利用" in "輸出
Firstdict = {"apple": "蘋果", "big": "大", "cat": "貓"}
字典名
Seconddict = {"one": 1, "two": 2, "three": 3}
"apple": "蘋果"
鍵Key
值value
字典的特性是,
你可以由"key"找到他相對應的"value"
而Key是唯一且不變的
value可以是任何資料型態
用大括號包起來
Firstdict = {"apple": "蘋果", "big": "大", "cat": "貓"}
print(Firstdict)
print(type(Firstdict))
先宣告好變數後
用 print 輸出變數及型態
執行結果
可以看到
資料型態是"dict"
Firstdict = {"apple": "蘋果", "big": "大", "cat": "貓"}
Seconddict = {"one": 1, "two": 2, "three": 3}
print(Firstdict["apple"])
print(Seconddict["three"])
中括號
字典中的Key
執行結果
Englishdict = {"apple": "蘋果", "big": "大", "cat": "貓"}
Englishdict["dog"] = "狗"
Englishdict["empty"] = "空"
print(Englishdict)
新增字典資料時
我們需要先有一個字典
而新增時語法為:
dictName[key] = value
執行結果
Englishdict = {"apple": "蘋果", "big": "大", "cat": "貓"}
addedEnglish = {
"Hi": "嗨",
"Hello": "哈囉",
"Happy": "開心",
"dig": "挖",
"empty": "空"
}
Englishdict.update(addedEnglish)
print(Englishdict)
語法:
dict.update(dict)
執行結果
Wrongdict={"Hi": "你好", "Hello": "我很好"}
print(Wrongdict)
Wrongdict["Hi"] = "哈囉"
Wrongdict["Hello"] = "你好"
print(Wrongdict)
更改資料與新增資料一樣都是:
dictName[key] = value
執行結果
給你這段程式:
輸入:
輸出:
numberdict = {"one": 1, "two": 2, "three": 3}
addnumber = {"six": "六", "seven": "七", "eight": "八", "nine": "九"}
幫我把value都改成文字
並新增 four 四 與 five 五 到number字典中
再把 addnumber 更新到 number 字典中
最後輸出number字典
無
5min
numberdict = {"one": 1, "two": 2, "three": 3}
addnumber = {"six": "六", "seven": "七", "eight": "八", "nine": "九"}
numberdict["one"] = "一"
numberdict["two"] = "二"
numberdict["three"] = "三"
numberdict["four"] = "四"
numberdict["five"] = "五"
numberdict.update(addnumber)
print(numberdict)
由 dictName[key] = value 新增並更改字典內容
再使用 dict.update(dict)
把addnumber 新增到 numberdict 中
最後輸出
刪除資料有兩種寫法
1: del dict_name['key']
2: dict_name.pop('key')
numberdict = {"one": 1, "two": 2, "three": 3, "four": 4}
print(numberdict)
del numberdict["four"]
print(numberdict)
numberdict = {"one": 1, "two": 2, "three": 3, "four": 4}
print(numberdict)
numberdict.pop("four")
print(numberdict)
執行結果
numberdict = {"one": 1, "two": 2, "three": 3, "four": 4}
print(f"numberdict的長度是: {len(numberdict)}")
print(f"numberdict中的key是: {numberdict.keys()}")
print(f"numberdict中的values是: {numberdict.values()}")
print(f"numberdict中的item是: {numberdict.items()}")
長度: len(dict_name)
查看鍵: dict_name.keys()
查看值: dict_name.values()
查看所有元素: dict_name.items()
執行結果:
Python 初學第九講 — 字典
break-continue
for i in 序列:
~~~
意思是:對於在 序列 中的 i
i : 變數
序列 : 一組數字、 list 、 set ......
for i in range(10):
print(i)
for i in range(1,10,2):
print(i)
range(起始值 , 終止值 , 遞 增/減 值)
執行結果:
執行結果:
範例輸入:
範例輸出:
輸入整數 x , 整數 y
幫我輸出:
整數x 加到 整數y (不包含 整數y ) = ?
5min
x = int(input())
y = int(input())
answer = 0
for i in range(x,y):
answer += i
print(f"{x} 加到 {y} (不包含{y}) = {answer}")
用 x , y 存入輸入的整數後
for i in range(x,y)
讓他起始為 x 終止為 y
再另用一個變數計算答案(answer)
numberlist = [1,2,3,4,5]
for i in numberlist:
print(i)
numberset = {1,2,3,4,5}
for i in numberset:
print(i)
numbertuple = (1,2,3,4,5)
for i in numbertuple:
print(i)
執行結果:
for i in range(10):
if(i==5):
break
print(i)
break : 跳出整個迴圈 (這裡跳出for)
執行結果:
for i in range(10):
if(i==5):
continue
print(i)
continue : 跳出本次迴圈
執行結果:
範例輸入:
範例輸出:
幫我計算 x 到 y 間的奇數和
( 包含 x,y )
5min
sum_odd = 0
x,y = map(int,input().split())
for i in range(x,y+1):
if(i%2==0):
continue
sum_odd += i
print(sum_odd)
當 i 是 2 的倍數時 ( i 除 2 餘數為0)
跳過當次迴圈( 不執行 sum_odd += i )
lista=[]
for i in range(10):
lista.append(i)
print(lista)
lista=[i for i in range(10)]
要append的東西
i 這個變數是在range(10)中
把在range(10)中的 i
append入lista中後輸出
while( True ):
~~~
意思是:
當 True 時
會一直做~~~
i=0
while(i<10):
print(i)
i+=1
while 會執行 10 次
直到 i 不小於10 ( False )
執行結果:
i=0
while(i<10):
print(i)
while 會一直執行
執行結果:
這並不是全部......
範例輸入:
範例輸出:
輸入正整數 N
使用 while 輸出 1 到 N 中所有 7 的倍數
5min
N=int(input())
i=1
while(i<=N):
if(i%7!=0):
i+=1
continue
print(i)
i+=1
當 i 是 7 的倍數時 ( i 除 7 餘 0)
輸出 i