---
# System prepended metadata

title: python

---

# python
[TOC]

## 前置說明
* python是一種程式語言
* 命令列視窗=跟作業系統溝通的介面 實例:command prompt
* anaconda概念上是python的另外一種版本
### 模組與套件
* 每個.py的檔案就是一個模組
* 模組可以被直接執行，也可被載入其他模式執行
* 套件為用來管理模組的目錄架構
* 每個套件目錄底下，必須有一個名為_init_.py的檔案
### 檔案類型
* 有.py與.ipynb兩種
    * .py即為一個模組
    * .ipynb是寫筆記的檔案格式

![](https://i.imgur.com/MHFbG2c.jpg)
![](https://i.imgur.com/XADY6vZ.jpg)
* 多數cell存在
* 可在text cell載入.py的執行
### 名詞解釋
* 變數：隨時可以改變內容的容器名稱，當設計者使用一個變數時，應用程式就會配置一塊記憶體給此變數使用，以變數名稱作為辨識此塊記憶體的標誌，系統會依據資料型態決定配置的記憶體大小。
* 運算子：指定資料做哪一種運算。 ex +,-,*....
* 運算元：進行運算的資料。 ex 2 + 3 -> 2和3是運算元
* 單元運算子：只有一個運算元。ex「-100」中的「-」(負)
* 二元運算子：具有兩個運算元。 ex「100 - 80」中的「-」(減)
* 變數命名規則
    * 不可以取保留字
    * 變數名稱第一個字母必須是大小寫字母、＿、中文
    * 只能由大小寫字母、數字、 _ 、中文組成變數名稱
    * 英文字母大小寫視為不同的變數名稱
* 程式=資料結構+演算法
* 資料型態:int、float、bool、str、None
* 容器類別
    * list []
    * tuple ()
    * dict {}
    * set {}
* 基本語法:條件式(if)、迴圈、函式、例外處理
* 有引號是字串
### 基礎語法(序列結構)
* 序列結構有三者:list(串列)、tuple(元組)、Dict(字典)
* list(可更動)
![](https://i.imgur.com/EcN3AKq.png)

    * range
    ![](https://i.imgur.com/DJM0ztI.png)

    * 重複
![](https://i.imgur.com/Xb25eKc.png)

    * 取值
![](https://i.imgur.com/uD1Xxrl.png)

    * 刪除
![](https://i.imgur.com/HBpCgXo.png)

    * 串列
![](https://i.imgur.com/RJM2rta.png)

    * index、count
![](https://i.imgur.com/6n691Rz.png)

    * 加入
![](https://i.imgur.com/0d1X5Tg.png)

    * 移除
![](https://i.imgur.com/XZrZ253.png)

    *reverse、sort
![](https://i.imgur.com/BLXYISY.png)

* Tuple(不可更動)
    * 可與list做轉換
![](https://i.imgur.com/CqpFRvM.png)
* Dict
    * list和Tuple都是用數字取得元素值，Dict則是使用其他Key值取值

