---
# System prepended metadata

title: Untitled

---

## 第二章 變數與運算式
### 變數命名規則

1.變數名稱只能由大小寫英文字、數字、_、中文組成
2.變數的第一個字母不能是數字
3.英文字母大小寫視為不同變數名稱
| acos  |  and  | array  |   asin   | assert  |  atan  |
|:-----:|:-----:|:------:|:--------:|:-------:|:------:|
| break | class | close  | continue |   cos   |  Data  |
|  def  |  del  |   e    |   elif   |  else   | expect |
| exec  |  exp  |  fabs  |  float   | finally | floor  |
|  for  | from  | global |    if    | import  |   in   |
| input |  int  |   is   |  lambda  |   log   | log 10 |
|  not  | open  |   or   |   pass   |   pi    | print  |
| raise | range | return |   sin    |  sqrt   |  tan   |
|  try  | type  | while  |  write   |  zeros  |        |

### 常用跳脫字元
![](https://i.imgur.com/bfXVrT3.png)
### %字串格式化
![](https://i.imgur.com/OMfLplH.jpg)
### %5d 超過在左方補空白字元
```
a=100
print("價格為%5d"%(a))
```
```
價格為  100
```
### %5s 超過在左方補空白字元
```
a='100'
print("價格為%5s"%(a))
```
```
價格為  100
```
### %8.2s 超過8，左方補空白字元。小數<2，補0
```
a= 100.1
print("價格為%8.2f"%(a))
```
```
價格為  100.10
```
### 字串格式化
print(字串.format(參數列))
「參數順序：格式設定」
## 第三章 判斷式

## 第四章 迴圈

### range
range(起始值,終止值)
range(起始值,終止值,間隔值)
### continue
執行中途暫時停住不往下執行，跳到迴圈起始處

```
for i in range(1,11)
    if(i==6)
        continue
    print(i, end = ",")
#1,2,3,4,5,7,8,9,10,
```
## 第五章 串列與元組
### for in 讀串列
```
list1 = ["香蕉","蘋果","橘子"]
for s in list1:
    print(s,end = ",")#香蕉,蘋果,橘子
```
### for range 讀串列
```
scores=[85,79,93]
for i in range(len(scores)):
    print(scores[i])
#85
#79
#93
```
### 刪除串列元素
**串列名.remove(串列元素)**
若不在串列中，將發生錯誤
```
list1 = ["春天","夏天","秋天","冬天"]
list1.remove("夏天")
print(list1)
#['春天','秋天','冬天']
```
**串列名.pop(索引值)**
沒有參數，取出最後一個元素

**del 串列名稱(索引值)**
可以是負值，由後向前
索引超出範圍，將發生錯誤

**del 串列名稱(起始值：終止值[:間隔值])**


### 串列排序
**串列名稱.sort()**
由小到大排序

**串列名稱.reverse()**
順序反轉

**串列名稱2 = sorted(串列名稱1,reverse=True/False)**
不會改變原串列
True 由大到小
False 由小到大
## 第六章 字典
### 建立字典
**字典名稱={鍵：值,...}**
**字典名稱=dict{[[鍵：值],...]}**
**字典名稱=dict(鍵=值),...)**
### 取值
字典名稱[鍵]
### 當字典的鍵重複
前面的鍵會被覆蓋
### 當字典的鍵不存在
產生錯誤
### 字典名稱.get(鍵[,預設值])
![](https://i.imgur.com/JbtC7ml.jpg)
### 修改字典
字典名稱[鍵] =值
### 刪除字典
**del 字典名稱[鍵]**
刪除字典中特定元素

**字典名稱.clear()** 
刪除字典中所有元素

**del 字典名稱** 
刪除字典

### setdefault
字典名稱.setdefault(鍵[,預設值])
![](https://i.imgur.com/Km8hxMC.png)

## pandas
```
#載入csv檔，用dataframe格式存放資料
df = pd.read_csv("file_usd_gold.csv")
print(df)

#各欄位的描述統計
print(df.describe())

#取得前三列資料
print(df.head(3))

#取得後三列資料
print(df.tail(3))

#用欄位名稱取得單一欄位的整欄資料
print( df["exchange"])

#at[資料索引值,欄位名稱] 利用資料索引值及欄位名稱來取得「單一值」
print( df.at[19,"exchange"])

#iat[資料索引值,欄位順序] 利用資料索引值及欄位順序來取得「單一值」
print( df.iat[19,1])

#loc[資料索引值,欄位名稱] 利用資料索引值及欄位名稱來取得「資料集」
print( df.loc[[18,19],["exchange","gold"]])
#iloc[資料索引值,欄位順序]：利用資料索引值及欄位順序來取得「資料集」
print(df.iloc[[18, 19], [1, 2]])

#append()：新增一列的資料
df = df.append({
    "date": "20221129",
    "exchange": 60,
    "gold": 1690
}, ignore_index=True)
print( df.loc[[18,19,20],["date","exchange","gold"]])

#修改特定格子的值
df.at[20, "exchange"] = 33  #修改索引值為1的math欄位資料
df.iat[20, 2] = 1700
print( df.loc[[18,19,20],["date","exchange","gold"]])

#針對單一欄位排序
df = df.sort_values(["exchange"], ascending=False)
print(df["exchange"])

#篩選

print(df[ df["exchange"]>32])

```