* Python中的變量不需要類型聲明
* 變量在內存中創建, 包含變量標識,名稱和數據等
* 變量在使用前都必須賦值,賦值以后該變量才會被創建
## 標準的數據類型
* `Number` 數字
* `String` 字符串
* `List` 列表
* `Tuple` 元組
* `Dictionary` 字典
### `Number` 數字
Python支持四種不同的數字類型
1. int 有符號整型
2. long 長整型
3. float 浮點型
4. complex 復數
```
# 數值類型
iNumber = 10
fNumber = 10.0
cNumber = 6 +5j # 復數
print(iNumber,fNumber,cNumber)
```
數字類型存儲數值, 是不可改變的數據類型,也就是改變數字數據類型會分配一個新的對象。
使用 del 語句可以刪除一些對象的引用
```
del var1[,var2[,var3[....,varN]]]
```
## 變量賦值
* 等號`=` 用來給變量賦值
* 左邊變量名,右邊是存儲在變量中的值
```
# 變量賦值
iCount = 100 # 整型
fCount = 100.0 # 浮點型
str = "Oscar" # 字符串
```
## 多個變量賦值
同時為多個變量賦值:
1. 方式1
```
a = b = c =1
```
這三個變量分配到相同的內存空間
2. 方式2
```
a,b,c = 1,2,"Oscar" #多個對象指定給多個變量
print(a,b,c)
```
## Python字符串
Python字符串有2種取值順序
* 從左到右索引默認0開始的,最大范圍是字符串長度少1
* 從右到左索引默認-1開始的,最大范圍是字符串開頭
| o | s | c | a | r |
| --- | --- |--- |--- |--- |
| 0 | 1 |2 | 3 | 4 |
| -5 | -4 | -3 | -2 | -1 |
* 加號`+` 是字符串連接
* `*` 號是字符串重復
```
# 字符串連接
str = "oscar"
print(str+str) #oscaroscar
# 字符串連接
str = "oscar"
print(str*3) #oscaroscaroscar
```
### 字符串截取
可以[頭下標:尾下標] 來截取相應的字符,獲取的子字符串包含頭下標的字符,但不包含尾下標的字符。
```
# 字符串截取
str = "oscar"
print(str[0:3]) # osc
print(str[-5:-2]) # osc
```
還可以接收第3個參數, 表示步長 ,[頭下標:尾下標:步長]
步長的意思的每隔幾個字符截取一個字符。
```
print(str[0:4:2]) # oc , 步長為2,每兩個字符取一個
```
## Python 列表
* 列表使用 `[]` 標識。
* 列表的截取也可以使用 `[頭下標:尾下標] `
* `+` 和 `*` 在列表也使用, 分別表示連接和重復。
```
# 列表
list = ['o','s','c','a','r']
print(list) #['o','s','c','a','r'] 輸入列表
print(list[0]) # 第一個元素 o
print(list[1:3]) # 第二個到第三個元素 ['s', 'c']
print(list[2:]) # 從第三個元素開始輸出 ['c', 'a', 'r']
print(list[::-1]) # 反轉列表 ['r', 'a', 'c', 's', 'o']
print(list+list) # 組合的列表 ['o', 's', 'c', 'a', 'r', 'o', 's', 'c', 'a', 'r']
print(list*2) # 輸出列表兩次 ['o', 's', 'c', 'a', 'r', 'o', 's', 'c', 'a', 'r']
```
## Python元組
元組類似于list , 使用 `()` 標識, 內部元素用逗號分隔,
元組不能二次賦值,相當于只讀列表
元組的取元素、截取,連接、重復等和List 是相同的。
```
# tuple
tuple = ('o','s','c','a','r')
tuple[0]="p" # 此用法不合法, 元組不能修改值
```
## Python 字典
* 列表是有序的對象集合,字典是無序的對象集合
* 字典中的值通過鍵來存取
* 字典使用 `{}` 標識, 字典由索引 (key )和value組成
```
# Dictionary 字典
dict = {'name': 'Oscar', 'age': 36, 'city': 'HF'}
dict['name'] = 'Silver' # 修改字典的值
dict['gender'] = 'Male' # 添加新的鍵值對
print(dict.keys) # 輸出字典的所有鍵
print(dict.values) # 輸出字典的所有值
```
## 數據類型轉換
只需要將數據類型作為函數名即可:
*` int(x [,base])` 將x轉換為一個整數
* `long(x [,base] )`將x轉換為一個長整數
* `float(x)`將x轉換到一個浮點數
* `complex(real [,imag])`創建一個復數
* `str(x)`將對象 x 轉換為字符串
*` repr(x)`將對象 x 轉換為表達式字符串
* `eval(str)`用來計算在字符串中的有效Python表達式,并返回一個對象
*` tuple(s)`將序列 s 轉換為一個元組
* `list(s)`將序列 s 轉換為一個列表
* `set(s)`轉換為可變集合
* `dict(d)`創建一個字典。d 必須是一個序列 (key,value)元組。
* `frozenset(s)`轉換為不可變集合
* `chr(x)`將一個整數轉換為一個字符
* `unichr(x)`將一個整數轉換為Unicode字符
* `ord(x)`將一個字符轉換為它的整數值
* `hex(x)`將一個整數轉換為一個十六進制字符串
* `oct(x)`將一個整數轉換為一個八進制字符串
- 前言
- 1.入門篇
- Python介紹
- 安裝與使用
- Python開發利器之VS Code
- 模塊安裝
- 命令行
- 一次Python無法安裝模塊的問題探索與解決之旅
- 命令運行
- Conda
- 下載地址
- 2.基礎篇
- 基礎語法
- 輸入與輸出
- with as的用法
- 注釋
- Python命令行參數
- 編碼
- 變量類型
- 列表遍歷
- 運算符
- 表達式語句
- 條件
- 循環
- 日期和時間
- 函數
- 高級語法
- @符號-裝飾器
- 模塊和包
- name
- init.py
- 錯誤和異常
- 面向對象
- 3.專題篇
- 常用功能
- Python 字符串連接
- python web
- Python CGI編程
- Python OAuth2
- 認證 Flask-HTTPAuth
- 常用命令
- 內置函數
- dir()
- print(f)
- 標準模塊
- sys
- pickle-數據序列化
- os
- IO(輸入輸出)
- 鍵盤輸入
- 文件讀寫
- 測試
- Python測試框架之pytest快速入門
- pytest-bdd快速示例和問題解決
- 基于pytest-bdd的項目目錄結構和命名規范
- python BDD 的相關概念
- Behave介紹和快速示例
- Python BDD之Behave測試報告
- Python BDD 框架比較之 pytest-bdd vs behave
- pytest進階
- Flask + pytest測試
- 參考網址
- pytest-bdd進階
- hehave進階
- 測試路徑
- python + selunium
- HTML 根據多層CSS 查找元素
- 等待執行
- 使用text 查找 span
- pytest如何在控制臺輸出
- 4.問題篇
- pip pip3 及區別
- TypeError: can only concatenate str (not "NoneType") to str
- 5.實戰篇
- matplotlib-繪圖包
- 導入類
- 命名規范
- 模塊查找
- 6.進階篇
- Flask
- Flask介紹
- Flask擴展模塊
- Flask-Login
- 問題
- Jinja2
- Flask-RESTful
- Flask-JWT-Extended
- WSGI
- Flask-SQLAlchemy
- 部署
- Flask VS Django
- Flask Web
- Flask + Vue
- Flask實戰
- Flask 標準目錄結構
- Blueprints
- 參考
- FastAPI 測試
- https 證書 Caused by SSLError(SSLCertVerificationError(1, '[SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate