# 資訊科技考試可能用到的Python語法
ouob,我張程勛>:D 然後我第一次用hackmd
直接開始:DDDDDDDDDDD
---
# 基本輸入輸出
1. ```print()``` 顧名思義,列印出東西,將變數放在裡面用逗號分隔即可
```
print("",end="") #也可以沒有空格,用於接續的輸出不換行(陣列)
```
3. ```input()``` 有輸出就有輸入,這可以讓使用者輸入東西並存放到一個變數裡
```a = input()```
**Python預設是輸入字串,如果要輸入整數的話這樣做**
```a = int(input())```
4. `f""` 格式化字串 透過大括號的方式將變數放在字串中
使用方式如下
```python=
a = 123
print(f"{a},Hello")
```
```
Output:
123,Hello
```
**!!!不會有空格!!!**
# for 迴圈
`for i in range(n):` for迴圈,n為任何數,會使i從0跑到n-1, ex: n = 5 ,i為0~4
`for i in range(n1,n2):` for迴圈,會使i從n1跑到n2-1
ex: n1 = 5, n2 = 10,i為5,6,7,8,9
`for i in range(n1,n2,x):` for迴圈,使i從n1跑到n2,每次跳x
ex: n1 = 3, n2 = 6, x = 2, i為3,5 (7超過n2了所以沒有)
# 陣列
陣列的概念就是一堆變數放一排,每個人都有自己的編號,也就是索引值(index),透過索引值你可以快速地找到第幾號是誰
Python index從0開始,也就是說10個數字的陣列索引值會是0~9
接下來來講陣列的宣告
- ```a = [0 for i in range(10)]```
用於宣告10個為0的整數變數,我自己比較喜歡的寫法,另外兩種太麻煩了(X
宣告完就可以開始賦值,也就是賦予一個值
- `a[index]`
index為0~陣列大小-1的數值,能夠取得陣列索引值為index的元素,也就是陣列第index+1的元素
: 我想要弄一個0~9的陣列怎麼辦?
可以透過for迴圈來跑整個陣列
```python=
a = [0 for i in range(10)]
for i in range(10):
a[i] = i
print(a)
```
```
Output:
[0,1,2,3,4,5,6,7,8,9]
```
想在list加入值?用list.append(num)在list尾端加入num
```python=
a = [1989,6,4,1949,1991,12,25]
a.append(19890604)
print(a)
```
```
Output:
[1989,6,4,1949,1991,12,25,19890604]
```
# 判斷式
1. `a and b` a跟b都是對的才是對的
2. `a or b` a或b其中一個是對的就對
3. `not a` a是對的你就是錯的
**合併起來比較麻煩,不要記順序,跟數學一樣你要先算的用括號括起來就對了**
# if else 判斷
~~幹這真的需要講嗎~~
Python 中 if 可有括號可不有,elif為上個if為否時做的事,else為全部if都為否時做的事
```python=
if (判斷式):
-do-
elif (判斷式):
-do-
else:
-do-
```
要小心的一點是 if判斷完並不會去判斷下個elif
```python=
a = 10
b = 20
c = 30
if a<b:
print(a)
elif b<c:
print(b)
```
```
Output:
10
```
但如果是兩個if的話,兩個都會判斷
```python=
a = 10
b = 20
c = 30
if a<b:
print(a)
if b<c:
print(b)
```
```
Output:
10
20
```
---
# 小技巧(函式)
一些陣列的函式
1. 快速找最大值 max(list) 會return陣列最大值
```python=
a = [3,40,2,345,9238,234]
print(max(a))
```
```
Output:
9238
```
2. 有max當然有min, min(list) 會return陣列最小值
```python=
a = [3,40,2,345,9238,234]
print(min(a))
```
```
Output:
2
```
3. 某個值在陣列中的索引, list.index(num) 會return num數值在list中的index<-(如果你不知道我在講甚麼的話給我往前翻陣列重看:<)
```python=
a = [3,40,2,345,9238,234]
print(a.index(345))
```
```
Output:
3
```
4.陣列總和, sum(a)會return 陣列元素中+起來的總和(限數字)
```python=
a = [3,40,2,345,9238,234]
print(sum(a))
```
```
Output:
9862(我希望我計算機沒按錯)
```
5. 只輸出陣列"數值"不輸出","與[]
```python=
a = [3,40,2,345,9238,234]
print(*a)
```
```
Output:
3 40 2 345 9238 234
```
6.同時處理輸入多個整數
```python=
a = list(map(int, input().split()))
print(a)
```
```
Input:
10 20 30
Output:
[10,20,30]
```
# 總結ouob
差不多這樣,有些老師教過有些沒有,反正就都塞在這裡了
有不會的再問我(別拿超高難度演算法問,我也不會)