---
# System prepended metadata

title: week11_1116_module_實戰
tags: [pynote]

---

## week11_1116_module_實戰

### ch07_函式與模組

 	
7.1  自訂函式<br>
1. 自訂函式<br>
2. 參數預設值<br>
3. 變數有效範圍<br>

7.2  數值函式<br>
1. 數值函式整理<br>
2. 指數、商數、餘數及四捨六入<br>
3. 最大值、最小值、總和及排序<br>

7.3 字串函式<br>
1. 字串函式整理<br>
2. 連接及分割字串<br>
3. 檢查起始或結束字串<br>
4. 字串排版相關函式<br>
5. 搜尋即取代字串<br>

7.4 亂數模組<br>
1. import 模組<br>
2. 亂數模組函式整理<br>
3. 產生整數或浮點數的亂數函式<br>
4. 隨機取得字元或串列元素<br>

7.5 時間模組<br>
1. 時間模組函式整理<br>
2. 取得時間訊息函式<br>
3. 執行程式相關時間函式<br>


### [inclass practice]

### {綜合演練}
### 實作3:
```
以十二小時(上午、下午)顯示現在時刻。
```
### 實作4:
```
小華媽媽上菜市場買菜，找錢時她希望在1元、5元、10元、50元硬幣中找回最少的硬幣。小華就利用自訂函式幫媽媽寫了一個程式。
```
 
### {範例}
1. 攝氏溫度轉華氏溫度  \
2. 學生分蘋果  \
3. 總和及排序  \
4. 檢查網址格式 \
5. 以字串排版函式列印成績單 \
6. 轉換日期格式 \
7. 擲骰子遊戲  \
8. 大樂透中獎號碼 \
9. 列印時間函式所有資訊 \
10. 計算執行一百萬次整數運算的時間 \
### {補充練習}
 - 1A2B
 - 函式1 : 數字相同+位置相同
 - 函式2 : 數字相同 + 位置不同 


```python
import time
print("hello")
time.sleep(1)
print("vivian")
```

    hello
    vivian
    


```python
import time as t
print("hello")
t.sleep(1)
print("vivian")
```

    hello
    vivian
    


```python
from time import sleep, perf_counter
print("hello")
sleep(1)
print("vivian")
```

    hello
    vivian
    


```python
for i in range (11):
    print(i)
    sleep(1)
```

    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    


```python
startTime = perf_counter()

for i in range (3):
    print(i)
    sleep(0.97)

endTime = perf_counter()

print(f"總費時:{endTime - startTime}秒")
```

    0
    1
    2
    總費時:2.9318465999999717秒
    


```python
t.localtime()
```




    time.struct_time(tm_year=2023, tm_mon=11, tm_mday=16, tm_hour=16, tm_min=12, tm_sec=37, tm_wday=3, tm_yday=320, tm_isdst=0)




```python
t.ctime()
```




    'Thu Nov 16 16:13:00 2023'



### {範例}
7. 擲骰子遊戲


```python
import random as r

while True:
    inKey = input("按任意鍵然後enter,擲骰子;若要結束遊戲,請直接按enter")
    if len(inKey) > 0:
        print(r.randint(1,6))
    else:
        print("game over")
        break
```

    按任意鍵然後enter,擲骰子;若要結束遊戲,請直接按enter5
    4
    按任意鍵然後enter,擲骰子;若要結束遊戲,請直接按enter4
    4
    按任意鍵然後enter,擲骰子;若要結束遊戲,請直接按enterd
    2
    按任意鍵然後enter,擲骰子;若要結束遊戲,請直接按enterr
    3
    按任意鍵然後enter,擲骰子;若要結束遊戲,請直接按enter
    game over
    

### [afterclass practice]

1. 教學影音: 
    - 新手入門 #07 Function (函式)
    - 新手入門 #09 Module (模組)
2. 期末分組名單


### 期末報告
到github找資料
1. README:解釋檔
2. Issues:向作者問問題
3. pull requests:修改並回傳程式給作者
4. 有缺少的module:! pip install _____
5. 可以用vscode寫
