Python基礎(上篇)
本篇文章主要內容:變量、注釋、運算符、關鍵字、數據類型。
在入手變量之前我們先來看看經典的編程語句 → hello world
在python3中輸出到控制台的函數是print()
print("hello world")
一、變量
1.1 語法
變量名 = 變量值
註:每一個變量在使用之前都必須賦值
1.2 示例
a = 20
b = "可樂"
1.3 本質
在 a = 20 中,python解釋器一共進行了兩步操作:
① 在內存中開闢一片內存地址用來存放數據 20;
② 在內存中創建一個一個變量名為a的對象,並把它指向了數據 20。
如圖:
- 在python中變量是內存地址的別名,也就是說a就代表了0x1002,python沒有指針;
- 變量a所標示的內存空間存儲數據20所在內存地址的過程稱為引用。
二、注釋
2.1 語法
① 單行注釋:以 # 開頭
② 多行注釋:用三個單引號 ''' 或者三個雙引號 """ 將注釋括起來
註:python解釋器不會執行被注釋的代碼塊
2.2 示例
# 這是一個單行注釋
'''
這是用三個單引號的多行注釋
這是用三個單引號的多行注釋
這是用三個單引號的多行注釋
'''
"""
這是用三個雙引號的多行注釋
這是用三個雙引號的多行注釋
這是用三個雙引號的多行注釋
"""
三、運算符
運算符包括以下內容:
- 算數運算符
- 比較運算符
- 賦值運算符
- 邏輯運算符
- 身份運算符
- 成員運算符
3.1 算數運算符
前提:a = 20 ; b = 10
運算符 | 描述 | 示例 |
---|---|---|
+ | 加法 | a+b 輸出 30 |
– | 減法 | a-b 輸出 10 |
* | 乘法 | a*b 輸出 200 |
/ | 除法 | a/b 輸出 2 |
% | 取模(返回除法的餘數) | a%b 輸出 0 |
** | 冪 | a**b 輸出 20的10次方 |
// | 取整(向下取整) | a//b 輸出 2 |
3.2 比較運算符
前提:a = 20 ; b = 10
運算符 | 描述 | 示例 |
---|---|---|
== | 等於(比較兩個數是否相等) | a==b 輸出 False |
!= | 不等於(比較兩個數是否不等) | a!=b 輸出 True |
> | 大於 | a>b 輸出 True |
< | 小於 | a<b 輸出 False |
>= | 大於等於 | a>=b 輸出 False |
<= | 小於等於 | a<=b 輸出 False |
3.3 賦值運算符
前提:a = 20 ; b = 10
運算符 | 描述 | 示例 |
---|---|---|
= | 賦值 | a=b 將b賦值給a |
+= | 加等於 | a+=b 等效 a = a + b |
-= | 減等於 | a-=b 等效 a = a – b |
*= | 乘等於 | a*=b 等效 a = a * b |
/= | 除等於 | a/=b 等效 a = a / b |
%= | 模等於 | a%=b 等效 a = a % b |
**= | 冪等於 | a**=b 等效 a = a ** b |
//= | 取整等於 | a//=b 等效 a = a // b |
3.4 邏輯運算符
前提:a = True ; b = False
運算符 | 描述 | 示例 |
---|---|---|
and | 兩者都為true,才是True | a and b 輸出 False |
or | 兩者其中一個為True,就是True | a or b 輸出 True |
not | 值的反義 | not a 輸出 False |
3.5 身份運算符
前提:a = True ; b = False
運算符 | 描述 | 示例 |
---|---|---|
is | 判斷兩者的內存地址是否一樣 | a is b 輸出 False |
is not | 判斷兩者的內存地址是否不一樣 | a is not b 輸出 True |
3.6 成員運算符
前提:a = "可" ; b = "可樂"
運算符 | 描述 | 示例 |
---|---|---|
in | 判斷值是否在序列中 | a in b 輸出 True |
not in | 判斷值是否不在序列中 | a not in b 輸出 False |
3.7 運算符優先級
從高到低
運算符 | 描述 |
---|---|
** | 指數 (最高優先級) |
* / % // | 乘,除,取模和取整除 |
+ – | 加法減法 |
<= < > >= | 比較運算符 |
== != | 等於運算符 |
= %= /= //= -= += *= **= | 賦值運算符 |
is is not | 身份運算符 |
in not in | 成員運算符 |
not and or | 邏輯運算符 |
四、關鍵字
關鍵字指的是被python內置默認的一些變量名,由於他有特殊的含義,所以我們在定義變量的時候,不能使用關鍵字作為變量名,python中一共33個關鍵字,後面絕大部分都會用到。
and | as | assert | break | class |
---|---|---|---|---|
continue | def | del | elif | else |
except | finally | for | from | False |
global | if | import | in | is |
lambda | nonlocal | not | None | or |
pass | raise | return | try | True |
while | with | yield |
五、數據類型
通過type()函數來知曉數據的類型,或者通過isinstance()來判斷數據的類型。
5.1 字符串(String)
5.1.1 語法
用單引號或雙引號或多引號括起來。
5.1.2 示例
a = '可樂'
b = "可樂"
c = """可樂"""
5.2 數字型(Number)
整型和浮點型都是屬於數字型。
5.2.1 語法
① 整型:a = 10
② 浮點型:b = 1.1
5.2.2 示例
a = 10 --> 整型
b = 1.1 --> 浮點型
print(type(a)) --> True
print(type(b)) --> False
5.3 布爾型(Bool)
Bool型其實也是數字型的一種,在這裡可樂單獨拿出來。
5.3.1 語法
Bool型有兩個關鍵字:
① True (真)
② False(假)
5.3.2 示例
a = True
b = False
5.4 列表(List)
列表是有序的。
5.4.1 語法
列表用方括號和逗號隔開來表示。
5.4.2 示例
a = [2,3,4,5,6]
b = [1]
5.4.3 列表索引
如圖:
在python中索引會有正序索引和負序索引,正序索引是從0開始的,負序索引是從-1開始的,例如列表a中數值2所對應的正序索引是0,負序索引是-4。
5.5 元祖(Tuple)
元祖是有序的。
5.5.1 語法
元祖用小括號和逗號隔開來表示。
註:如果元祖只有一個值,那麼一定要用” ,”結尾 !!!
5.5.2 示例
a = (2,3,4,5,6)
b = (1,)
5.5.3 元祖索引
如圖:
元祖和列表的索引表示方式是一樣的。
5.6 字典(Dict)
字典是無序的。
5.6.1 語法
① 字典用大括號的鍵值對表示,每個鍵值對之間用逗號分開,鍵是唯一的(否則後面的會覆蓋前面的),值可以不唯一。
② 鍵必須是不可變類型,值可以取任何類型。
5.6.2 示例
a = { "name": "可樂", "age": 18 }
b = { "name": "kele是可樂呀" }
字典是無序的,所以沒有索引的概念。
5.7 集合(Set)
集合Set是無序的不重複的數據類型。
5.7.1 語法
用大括號或者set()創建,但是沒有鍵值對的概念。
註:如果創建一個空集合用set()創建,{}表示創建一個字典。
5.7.2 示例
a = { "可樂", 18 }
b = set()
集合是無序的,所以沒有索引的概念。
5.8 說明
- 可變類型:包含列表,字典。
本質:改變原變量的值,不會改變原有的內存地址。 - 不可變類型:字符串,數字,元祖。
本質:改變原變量的值,會改變原有的內存地址。
到此我們在本篇當中就已經學習了python當中的變量、注釋、運算符、關鍵字以及數據類型。下一篇可樂將和大家一起來看看數據類型的常用方法,條件語句和循環語句。
在結尾呢,可樂給大家準備了一個思考題用來鞏固本篇的內容:
定義一個字典a,有兩個鍵值對:一個鍵值對key是可樂,value是18;另一個鍵值對key是python,value是列表形式的1,2,3,4,5。
在下一篇中可樂會留下答案。