# Python 第二堂 for迴圈, list串列
# for迴圈
C語言大概長這樣
```c=
for (... ;...; ..){
}
```
條件都在()裡面,要執行指令放{}
```python=
for i in range(5):
print(i)
```
i 變數自己設
range(數字) 重複做幾次
第一次: i = 0
第二次: i = 1
第三次: i = 2
第四次: i = 3
第五次: i = 4
## 如果要用for迴圈印 "01234"
range裡面填一個數字,代表要做幾次(做到哪個數字結束)
```python=
for a in range(5):
print(a, end="")
```
## 如果要用for迴圈印 "12345"
range裡面填兩個數字,代表要從哪個數字開始做到哪個數字結束
```python=
for a in range(1,6):
print(a, end="")
```
## 如果要印 "13579"
range裡面填兩個數字,數字分別代表
1. 要從哪個數字開始
2. 到哪個數字結束
3. 每次跳的數字
```python=
for a in range(1,10,2):
print(a, end="")
```
## 每次跳的數字是負數時
印 "10 9 8 7 6 5 4 3 2 1 0 "
```python=
for a in range(10,-1,-1):
print(a, end = " ")
```
# Example
印 "2,4,6,8,10....,100"
```python=
for i in range(2, 101, 2):
print(i, end=",")
```
另一種做法:
```python=
for i in range(51):
#print(2 * i , ",", end = "")
print(str(2 * i) + ",", end = "")
```
# list 陣列、串列
陣列裡面可以塞很多項東西,可同時存不同類型(數字、字串)到陣列中
```python=
l = [1,3,"ABC",1,"Z"]
print(l) # 印出整個串列
print(l[2]) # 印出第三項: ABC"
print(l[2], l[4]) # 印出第三項與第五項: ABC"
```
## 取出陣列的每個項目 (透過for)
方法一
```python=
l = [1,3,"ABC",1,"Z"]
# 迭代
for i in l:
print(i) # 每一次的i就是依序往下的一個項目。i是項目
```
方法二
```python=
for i in range(len(l)): # i: 0,1,2,3,4。i是數字
print(l[i])
```
# 雙迴圈、巢狀迴圈
巢狀迴圈意思是:迴圈裡面還有迴圈
```python=
for i in range(3):
for j in range(5):
print(i, j)
```
先做最裡面的迴圈(先做j做完在對累進i)
## 九九乘法表
```python=
for i in range(1,10):
for j in range(1,10):
print(i,"x", j, "=", i*j)
```
排版,每個數字一列
```python=
for i in range(1,10):
for j in range(1,10):
print(i,"x", j, "=", i*j, end=" ", sep="")
print() # 印空白
```