---
# System prepended metadata

title: Day 5 - Beginner - Python Loops
tags: [python, 100 Days Of Code, Udemy]

---

Udemy課程：[100 Days Of Code（Dr. Angela Yu）](https://www.udemy.com/course/100-days-of-code/)
# Day 5 - Beginner - Python Loops
###### tags: `python` `Udemy` `100 Days Of Code`
2021.01.26（Tue.）
## ● 前言 / 心得

## ● 上課筆記
這次的課程進到了for迴圈，雖然課程量跟前面幾堂比起來少很多，但剛進第一個實作就直接掛掉（[day-5-1-exercise](https://repl.it/@tina0915tw/day-5-1-exercise#main.py)），對於迴圈如何使用竟然完全沒有想法，理所當然地在遇到[day-5-2-exercise](https://repl.it/@tina0915tw/day-5-2-exercise#main.py)也還是無法解決，這堂課下來可見for迴圈的難度與重要性。

而課程中老師也提到一些函式雖然可以快速解決那些實作，但有些程式語言中可能不會有這些函式，所以老師也在這堂課中常常提醒試著用for迴圈來完成，畢竟for迴圈這個觀念，在不同語言中都會碰到的。

至於專題則是用到了random中的choice()跟shuffle()來完成的。
## 0.code
[day-5-start](https://repl.it/@tina0915tw/day-5-start#main.py)
[day-5-1-exercise](https://repl.it/@tina0915tw/day-5-1-exercise#main.py)
[day-5-2-exercise](https://repl.it/@tina0915tw/day-5-2-exercise#main.py)
[day-5-3-exercise](https://repl.it/@tina0915tw/day-5-3-exercise#main.py)
[day-5-4-exercise](https://repl.it/@tina0915tw/day-5-4-exercise#main.py)
[password-generator-start](https://repl.it/@tina0915tw/password-generator-start#main.py)
## 1.單層for-loops迴圈
[參考資料](https://medium.com/ccclub/ccclub-python-for-beginners-tutorial-4990a5757aa6)
**for** 和 **in** 是 Python 的關鍵字，這兩個關鍵字之間會放我們自訂的變數，而 in的後面則可接一個序列 (Sequence)，迴圈會依序從序列 (例如: 一連串清單資料，一組數字或一個名單) 裡取得元素，並將元素指派給前面自訂的變數，然後執行迴圈裡的內容。

> 舉例：
```python=
fruits=["Apple","Peach","Pear"]
for fruit in fruits:
  print(fruit)
```
## 2.for-loops and the range()function
> range()fuction：

| 寫法          | 表示                      | 輸出      |
| ------------- | ----------------------- | --------- |
| range(3)      | 0開始,不包含3             | 0,1,2     |
| range(1,3)    | 1開始，不包含3            | 1,2       |
| range(1,10,2) | 1開始,不包含10(2是步進值) | 1,3,5,7,9 |
* 用法為：(起始值, 終止值, 遞增(減)值)