---
# System prepended metadata

title: 用Python求π 順便教import

---

# 用Python求π 順便教import 
## import是啥
import 是匯入一個函式庫（可以自己寫的也可以是別人寫的）

#### 自己寫ㄉ 
```
folder/
├── you_write_module.py
└── you_import.py
```
現在you_write_module.py裡面有兩個函式 
you_write_module.py
```
def add(a,b):
    return a+b
def sub(a,b):
    return a-b
```
然後你想要在另一個程式用
你可以在you_import.py裡面 把它import(匯入)
you_import.py
```
import you_write_module
```
阿你想要用add或sub函式 在you_import.py裡面打
```
you_write_module.add(1,2)
you_write_module.sub(3,2)
＃這樣就跑得動ㄌㄚ
```
然後還有其他種import方式

#### 別人寫ㄉ
```python=
# Import 整個 `random` module
import random

# 使用 `random` module 底下的 `randint` function
print(random.randint(0, 5))
```
那random 這個函式庫哪來呢
要自己用一個python內建 載函式庫用的指令pip去載

到終端機打
```
pip install random
```
那你的電腦就會幫你載 水
python函式庫多到出水 可以參考pypl這個網站


## 來求π吧
### 蒙地卡羅法
![](https://i.imgur.com/XMZUGfY.png)

![](https://i.imgur.com/K4dZLpR.png)

點丟得夠多 點的數量就會趨近於面積 我們就有pi了
所以我們要隨機丟一堆點在裡面 來求得pi

這邊的話用的是1/4的單位圓 （計算方便
開始囉！

#### 匯入random函式庫（我們生不出隨機數QQ）
```
import random
from time import perf_counter
#順便測一下時間
```
然後到終端機（cmd, powershell）打
```
pip install time
```
```
pip install random
```
#### 時間函式庫怎麼用

```
# 開始計時 回傳開始時間 應該是0.00000多
start = perf_counter()
...跑跑跑

＃回傳時間
end = perf_counter()


#跑的時間就末減初
print(end-start)
```

#### 開始丟點點
我們先設定丟多少個點
```
N = 100
# 要丟幾個從這邊改
```
```
for x in range(N):
    
```