Python入門(上)
簡介
Python 是一個高層次的結合了解釋性、編譯性、互動性和面向對象的腳本語言。
Python 的設計具有很強的可讀性,相比其他語言經常使用英文關鍵字,其他語言的一些標點符號,它具有比其他語言更有特色語法結構。
Python 基礎語法
行與縮進
python最具特色的就是使用縮進來表示代碼塊,不需要像 C、Java、Go 等編程語言使用大括號 {} 。
注意: 縮進的空格數是可變的,但是同一個代碼塊的語句必須包含相同的縮進空格數。
注釋
單行注釋 #
# 這是一個單行注釋
多行注釋 ''' ''' 或者 """ """
'''
這是多行注釋,用三個單引號
這是多行注釋,用三個單引號
這是多行注釋,用三個單引號
'''
"""
這是多行注釋,用三個雙引號
這是多行注釋,用三個雙引號
這是多行注釋,用三個雙引號
"""
運算符
- 算術運算符
| 操作符 | 名稱 | 示例 |
|---|---|---|
| + | 加 | 1 + 1 |
| - | 減 | 2 - 1 |
| * | 乘 | 3 * 4 |
| / | 除 | 3 / 4 |
| // | 整除 | 3 // 4 |
| % | 取余 | 3 % 4 |
| ** | 冪 | 2 ** 3 |
注意: //取整除 - 向下取接近商的整數
- 比較運算符
| 操作符 | 名稱 | 示例 |
|---|---|---|
| > | 大於 | 2 > 1 |
| >= | 大於等於 | 2 >= 4 |
| < | 小於 | 1 < 2 |
| <= | 小於等於 | 5 <= 2 |
| == | 等於 | 3 == 4 |
| != | 不等於 | 3 != 5 |
- 邏輯運算符
| 操作符 | 名稱 | 示例 |
|---|---|---|
| and | 與 | (3 > 2) and (3 < 5) |
| or | 或 | (1 > 3) or (9 < 2) |
| not | 非 | not (2 > 1) |
- 位運算符
| 操作符 | 名稱 | 示例 |
|---|---|---|
| ~ | 按位取反 | ~4 |
| & | 按位與 | 4 & 5 |
| | | 按位或 | 4 | 5 |
| ^ | 按位異或 | 4 ^ 5 |
| << | 左移 | 4 << 2 |
| >> | 右移 | 4 >> 2 |
in成員運算符is身份運算符
| 操作符 | 名稱 | 示例 |
|---|---|---|
| in | 存在 | 'A' in ['A', 'B', 'C'] |
| is | 是 | "hello" is "hello" |
注意:
is對比的是兩個變量的內存地址==,!=對比的是兩個變量的值- 比較的兩個變量,指向的都是地址不可變的類型(
str等),那么is和== , !=是完全等價的。 - 對比的兩個變量,指向的是地址可變的類型(
list,dict,tuple等),則兩者是有區別的。
Python運算符優先級
| 運算符 | 描述 |
|---|---|
| ** | 指數 (最高優先級) |
| ~ + - | 按位翻轉, 一元加號和減號 (最后兩個的方法名為 +@ 和 -@) |
| * / % // | 乘,除,求余數和取整除 |
| + - | 加法減法 |
| >> << | 右移,左移運算符 |
| & | 位 'AND' |
| ^ | | 位運算符 |
| <= < > >= | 比較運算符 |
| == != | 等於運算符 |
| = %= /= //= -= += *= **= | 賦值運算符 |
| is is not | 身份運算符 |
| in not in | 成員運算符 |
| not and or | 邏輯運算符 |
標准數據類型
Python3 中有六個標准的數據類型:
- Number(數字)
- String(字符串)
- List(列表)
- Tuple(元組)
- Set(集合)
- Dictionary(字典)
- Python3 的六個標准數據類型中:
不可變數據:Number(數字)、String(字符串)、Tuple(元組)
可變數據:List(列表)、Dictionary(字典)、Set(集合)
基本類型:int(整型)、float(浮點型)、bool(布爾型)
容器類型:String(字符串)、Tuple(元組)、List(列表)、Dictionary(字典)、Set(集合)
其中數字型分:
| 類型 | 名稱 | 示例 |
|---|---|---|
| int | 整型 <class 'int'> | -876, 10 |
| float | 浮點型<class 'float'> | 3.149, 11.11 |
| bool | 布爾型<class 'bool'> | True, False |
獲取類型信息 type(object)
如果要判斷兩個類型是否相同推薦使用 isinstance()
變量
Python 中的變量不需要聲明。每個變量在使用前都必須賦值,變量賦值以后該變量才會被創建。
變量命名:
- 在使用變量之前,需要對其先賦值。
- 變量名可以包括字母、數字、下划線、但變量名不能以數字開頭。
- Python 變量名是大小寫敏感的。
編程流程
- 順序
- 分支
- 循環
順序(略)
就是單向由程序自上而下
分支 if
Python 條件語句是通過一條或多條語句的執行結果(True 或者 False)來決定執行的代碼塊。
格式
if (<expr>):
<statement>
<statement>
···
<statement>
<following_statement>
<expr> 為 false 略過 if 中 <statement> 指向 <following_statement>
<expr> 為 true 先執行 if 語塊中內容,再執行<following_statement>
Python 中用 elif 代替了 else if,所以if語句的關鍵字為:if – elif – else
注意:
- 每個條件后面要使用冒號 :,表示接下來是滿足條件后要執行的語句塊。
- 使用縮進來划分語句塊,相同縮進數的語句在一起組成一個語句塊。
- 在Python中沒有
switch – case語句。
循環 for while
while 循環
while <condition>:
<statements>
···
注意:
冒號和縮進
另外,在 Python 中沒有
do..while循環。while 循環使用
else語句
for 語句
for <variable> in <sequence>:
<statements>
else:
<statements>
Python for 循環可以遍歷任何可迭代對象
break 和 continue 語句
break 語句可以跳出 for 和 while 的循環體。如果你從 for 或 while 循環中終止,任何對應的循環 else 塊將不執行。
continue 語句被用來告訴 Python 跳過當前循環塊中的剩余語句,然后繼續進行下一輪循環。
pass 語句
Python中 pass 是空語句,是為了保持程序結構的完整性
