---
# System prepended metadata

title: Python 學習筆記

---

# Python 學習筆記




### 運算相關函數

```python
#呼叫math使用運算函數
from math import floor, ceil, sqrt, log......    #此方法可直接使用函數
import math                                      #此方法要在函數前面加上"math."才可使用

floor()                                          #無條件捨去
ceil()                                           #無條件進位
sqrt()
log()
log(x,a)
pi                                               #圓周率
e                                                #自然數
sin()
cos()
tan()
asin()

#print
#sep為每個向量後加的符號，end為最後一個服ㄏㄠ
print(.....,sep='',end='')

```


### If ...else
```python
#example
if  x < 0:
    print(-x)
else:
    print(x)

#if...else if ....
if .... :
elif .... :
else:
 

#布林值
#在python中，flase為0或空值，true為1或文字
bool(n)
```

### For loop 

```python
#ex
i=1
for a in 'apple','banana','cat':
    print('#',i,"name is",a)
    i=i+1
    
#可以拆解字串
for character in 'hello':
    print(character)
>h
>e
>l
>l
>o

#可指定範圍  
#range(min_value, max_value,step)     step表等差級距
#range(5)  則是表示0-4
#str("")   可拆解字串

for i in range(5, 8):     #但i只包含5-7
    print(i, i ** 2)
print('end of loop')

i += 1                    #表示i=i+1
```

### Strings
```python
len(a)                      #計算字串長度

#若要擷取字串某個字元
s='hello'
print(s[0])
>h

#尋找字元位置
string_name.find()
#尋找字元最後一次出現位置
string_name.rfind()
s.find(substring, left, right)
#取代字串
s.replace(old,new)
#計算某字串出現次數
s.count(substring)

```

### While loop
```python
#example
i=1
while i <= 5:
    print(i)
    i += 1
```

### Dataframe 
```python=
#匯入pandas套件來建立data frame
import pandas as pd 
#定義新增欄位和輸入資料，以及資料名稱
cars = {'gender': ['F','M','M','F'],
        'id': [1,2,3,4]
        }
#定義data frame        
df = pd.DataFrame(cars, columns = ['gender', 'id'])
print(df)
#pandas df的if condiction
df.loc[df['gender'] == "M", 'sex'] = 1 
df.loc[df['gender'] == "F", 'sex'] = 2
print(df)
```

### range相關函數
#### range()
生成從start(包含)到stop(不包含)，等差以step的序列。
只能使用整數。
```python=
range(start,stop,step)
```
#### np.arange()

可使用整數或小數點。
```python=
np.arange([start,]stop[,step])
```




