扎扎實實地打好基礎,練好基本功,我認為這是學好Python的“秘訣”,老子曾云:九層之臺,起于壘土,本文主要以一些簡單的小例子簡述Python基礎之變數相關內容,僅供學習分享使用,如有不足之處,還請指正,
什么是變數?
變數是指在程式執行程序中,值可以發生變化的量,與之對應的是常量,常量是指在程式執行程序中,值不可以發生變化的量,變數和常量都是為了獲取和設定記憶體中對應地址的值,而便于記憶和識別而起的名稱,
Python中常用變數型別
Python中常用的變數型別,主要包括:Number(數字),String(字串),List(串列),Tuple(元組),Dictionary(字典),如下圖所示:

變數的命名規則
Python中,變數的命名規則如下:
- 變數名不能用數字開頭
- 變數名不能包含特殊的符號
- 變數名應該有意義,避免使用a,b,c來命名變數
- 如果必須在一個變數名中用多個單詞,請用下劃線來分隔
- 大多數情況下,變數名應該小寫
- 如果使用單個字母命名,避免使用小寫L或者大寫O
錯誤或不友好的變數命名
錯誤或不友好的變數命名,示例如下所示:
>>> 1name='Alan.hsiang' SyntaxError: invalid syntax >>> a=1 >>> b=2 >>> b*c=3 SyntaxError: can't assign to operator >>> b$c=2 SyntaxError: invalid syntax >>>
友好的變數命名
友好的變數命名示例,如下所示:
>>> name='Alan.hsiang' >>> name_age="Alan.hsiang 's age is 20" >>> age =20
Number型別(數字)
在Python3中,支持的數字型別,共有以下幾種:
int 整型,包括正整數,負整數,0,可以通過二進制,八進制,十進制,十六進制,進行表示,
int型別示例如下所示:
>>> num1=2 #十進制 >>> num1 2 >>> num2=0b101 #二進制 >>> num2 5 >>> num8=0o24 #八進制 >>> num8 20 >>> num16=0x3F #十六進制 >>> num16 63 >>>
float 浮點型,包含兩部分:整數部分,小數部分,通過整數.小數來表示,也可以通過科學計數法表示,
float型別示例如下所示:
>>> float_num1=2.345 # 普通表示法 >>> float_num1 2.345 >>> float_num2 =1.23e9 #科學計數法 >>> float_num2 1230000000.0 >>>
bool 布爾型別,表示邏輯值,值只有兩個:True,False,
bool型別示例如下所示:
>>> b_var1=True # 注意大小寫敏感 >>> b_var1 True >>> b_var2=False # 注意大小寫敏感 >>> b_var2 False >>>
注意:True和False是關鍵字,大小寫敏感,不能寫錯,錯誤示例如下:
>>> b_var3=true Traceback (most recent call last): File "<pyshell#17>", line 1, in <module> b_var3=true NameError: name 'true' is not defined >>> b_var4=false Traceback (most recent call last): File "<pyshell#18>", line 1, in <module> b_var4=false NameError: name 'false' is not defined >>>
complex 復數型別,以3+4j格式表示,
complex示例如下所示:
>>> c_num=complex(3,4) >>> c_num (3+4j) >>>
type方法的使用
type方法主要用于判斷當前變數的資料型別,如下所示:
>>> type(num1) <class 'int'> >>> type(float_num1) <class 'float'> >>> type(b_var1) <class 'bool'> >>> type(c_num) <class 'complex'> >>>
Python數學運算子
Python支持的常規數學運算子,如下所示:

常規數學運算子,示例如下:
>>> a=5 >>> b=2 >>> a+b 7 >>> a*b 10 >>> a**b 25 >>> a/b 2.5 >>> a//b 2 >>> a%b 1 >>>
Python比較運算子
Python支持的比較運算子,如下所示:

比較運算子,示例如下:
>>> a=20 >>> b=10 >>> a==b False >>> a!=b True >>> a>b True >>> a<b False >>> a>=b True >>> a<=b False >>>
Python賦值運算子
Python支持的賦值運算子,如下所示:

賦值運算子,示例如下:
>>> c=a+b >>> c 30 >>> c+=a >>> c 50 >>> c-=a >>> c 30 >>> c*=a >>> c 600 >>> c/=a >>> c 30.0 >>> c%=a >>> c 10.0 >>> c**=a >>> c 1e+20 >>> c//=a >>> c 5e+18 >>>
Python邏輯運算子
Python支持的邏輯運算子,如下所示:

邏輯運算子,示例如下:
>>> a and b # 如果a為True , 則回傳 b 計算的值 10 >>> a or b # 如果a 為True,則回傳a 的值,否則,回傳b的值 20 >>> not a # 如果a 為 True,則回傳 False False >>>
Python成員運算子
Python支持的成員運算子,用于測驗成員是否包含在序列中,包括字串,串列,元組等,如下所示:

成員運算子,示例如下:
>>> list=[4,5,6,7,8,9,0] >>> 5 in list True >>> 3 in list False >>> 3 not in list True >>> 5 not in list False >>>
Python身份運算子
身份運算子,用于比較兩個物件的存盤單元,如下所示:

身份運算子,示例如下所示:
>>> a=b >>> a is b True >>> a is not b False >>> b=3 >>> a is b False >>> a is not b True >>>
String型別(字串)
字串型別是最常用的資料型別之一,可以用引號(單引號或 雙引號)來創建字串,字串中的字符,可以包含,字符,字母,中文字符,特殊符號等內容,
創建字串
Python創建字串非常簡單,只需要為變數分配一個字串型別的值即可,示例如下:
>>> str1 = 'apple' >>> str1 'apple' >>> str2 = "apple" >>> str2 'apple' >>> str3 = "apple'color is red" >>> str3 "apple'color is red" >>> str4 = 'apple is very "good"' >>> str4 'apple is very "good"' >>>
注意:Python中,支持英文單引號和雙引號兩種方式定義字串,主要是為了避免字串內容中包含引號的情況,
字串錯誤示例,如下所示:
>>> str5= 'apple'is good' SyntaxError: EOL while scanning string literal >>> str6 = 'apple' hahaha' SyntaxError: invalid syntax >>> str7 = ‘abc’ SyntaxError: invalid character in identifier >>>
多行字串
如果字串有多行,需要用三個單引號或雙引號來定義,如下所示:
>>> str8 = '''大家好 我是Alan.hsiang 我是一個man 我很懶''' >>> print(str8) 大家好 我是Alan.hsiang 我是一個man 我很懶 >>> str8 '大家好\n我是Alan.hsiang\n我是一個man\n我很懶' >>>
訪問字串
在Python中,可以通過序號來訪問字串中的某一個或多個字符,序號從0開始,
>>> str4 = 'apple is very "good"' >>> str4[0] # 正向訪問 'a' >>> str4[2] 'p' >>> str4[-1] # 反向訪問 '"' >>> str4[-2] 'd' >>> str4[1:2] #切片訪問,從1開始,2結束,不包含2 'p' >>>
更新字串
字串的內容是只讀的,不允許更新,如果非要更新,可以轉換成串列,修改后,再轉換成字串,這種折中方法,如下所示:
>>> list1=list(str1) >>> list1 ['a', 'p', 'p', 'l', 'e'] >>> list1[0]='A' >>> list1 ['A', 'p', 'p', 'l', 'e'] >>> str1 = "".join(list1) >>> str1 'Apple' >>>
在轉換時,如果報以下錯誤,是由于之前宣告list為變數,所以訪問不到內置函式,所以也請注意:變數命名要規范,不能使用關鍵字,
>>> list2 = list(str1) Traceback (most recent call last): File "<pyshell#70>", line 1, in <module> list2 = list(str1) TypeError: 'list' object is not callable
List型別(串列)
什么是串列?
串列是Python中非常重要的一種資料結構,由一系列按特定順序排列的元素組成,開發者可以創建包含字母,數字的串列,也可以將任何元素加入串列中,元素之間的資料型別可以不同,串列中的每一個元素,都被分配了一個索引,代表元素在串列中的位置,索引從0開始,在Python程式中,用英文中括弧表示串列,并用逗號分隔串列的元素,
如何創建串列?
串列的創建也非常簡單,通過變數 = [元素1,元素2,...,元素n]的格式來創建,如下所示:
>>> fruits = ['apple','pear','banana'] >>> print(fruits) ['apple', 'pear', 'banana'] >>> type(fruits) <class 'list'> >>> list2 = [] >>> list3 = [1,2,3,'a','b',4,5] >>> print(list3) [1, 2, 3, 'a', 'b', 4, 5] >>>
如何訪問串列?
串列是通過索引進行訪問的,可以通過 串列名稱[索引] 的格式進行訪問,如下所示:
>>> fruits[1] 'pear' >>> list3[3] 'a' >>>
注意:串列的索引從0開始,
如果要訪問的串列的內容,超出了串列的范文,則會報以下錯誤:
>>> list3[7] Traceback (most recent call last): File "<pyshell#89>", line 1, in <module> list3[7] IndexError: list index out of range
Python的串列,不僅支持正向索引,還支持負向索引,如下所示:
>>> list3[-1] 5 >>> list3[-2] 4 >>>
同樣,串列也支持切片的方式進行訪問,如下所示:
>>> list3[1:4] # 起始位置,結束位置,包含起始,不包含結束 [2, 3, 'a'] >>>
Tuple型別(元組)
在Python程式中,可以將元組看做是特殊的串列,與串列不同的是,元組內的元素不能發生改變,不但不能改變元組內的資料項,也不能添加和洗掉資料項,當需要創建一組不可改變的資料時,通常會把這些資料放在元組中,
如何創建并訪問元組?
在Python程式中,元組是以小括號將資料括起來,各個元素之間用逗號隔開,也可以創建空元組,具體如下所示:
>>> t1 = ('a','b','c') >>> t1 ('a', 'b', 'c') >>> type(t1) <class 'tuple'> >>> t1[1] 'b' >>> t1[1]='B' # 如果嘗試修改元組的元素內容,則會報錯 Traceback (most recent call last): File "<pyshell#98>", line 1, in <module> t1[1]='B' # 如果嘗試修改元組的元素內容,則會報錯 TypeError: 'tuple' object does not support item assignment >>>
當元組中只有一個元素時,需要在元組后面添加逗號,如下所示:
>>> t2 = (2) # 如果只有一個元素,不加逗號,則不是元組 >>> type(t2) <class 'int'> >>> t3= (2,) # 如果只有一個元素,加上逗號,就表示元組 >>> type(t3) <class 'tuple'> >>>
元組同串列一樣,支持索引和切片訪問,如下所示:
>>> t1[1] 'b' >>> t1[1:3] ('b', 'c') >>>
使用內置方法操作元組
元組常用的內置方法,如下所示:
- len() 獲取元組的長度,即元素個數,
- max() 獲取元組中元素的最大值,
- min() 獲取元組中元素的最小值,
元組使用內置函式,如下所示:
>>> t1 = ('a','b','c') >>> t1 ('a', 'b', 'c') >>> len(t1) 3 >>> max(t1) 'c' >>> min(t1) 'a' >>>
Dictionary型別(字典)
什么是字典?
字典,是以大括號{}包圍,并且以“鍵:值”對的方式宣告和存在的資料集合,字典與串列相對,最大的不同在于字典是無序的,其成員位置只是象征性的,在字典中,通過鍵來訪問成員,而不能通過其位置來訪問成員,
創建并訪問字典
字典中可以存盤任意個鍵-值對,每一個鍵-值對中的鍵(Key)必須是唯一的,不可變的,但值(Value)則不必,鍵值可以取任意資料型別,格式如下:dict1={key1:value1,key2:value2}
創建并操作字典示例如下所示:
>>> dict1={'a':1,'b':2}
>>> dict2={} # 空字典
>>> type(dict1)
<class 'dict'>
>>> dict2['apple']='big' # 添加元素
>>> dict2['orange']='small' # 添加元素
>>> dict2
{'apple': 'big', 'orange': 'small'}
>>> dict1['a'] =-1 # 修改元素的值
>>> dict1
{'a': -1, 'b': 2}
>>> del dict1['a'] # 洗掉鍵值
>>> dict1
{'b': 2}
>>>
與字典相關的內置函式
與字典相關的內置函式,如下所示:
- len() 求字典的元素的個數
- str() 將字典轉換成字串,
內置函式,示例如下:
>>> len(dict2) 2 >>> str(dict2) "{'apple': 'big', 'orange': 'small'}" >>>
備注
合抱之木,生于毫末,——老子《老子》
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/288359.html
標籤:Python
上一篇:記賬程式2.0
下一篇:超級瀏覽器-爬蟲
