Python中的基本數據類型有哪些?

自動化測試老莫 發佈 2022-05-24T02:39:22.329245+00:00

1.布爾型布爾型數據的算術運算 布爾型的取值只有兩個,True 和 False。可以拿來做算術運算,此時等價於 1 和 0。布爾型數據的邏輯運算計算優先級:先算not ,再算and, 最後算or。2.數值型2.

1.布爾型

布爾型數據的算術運算 布爾型的取值只有兩個,True 和 False。

可以拿來做算術運算,此時等價於 1 和 0。

布爾型數據的邏輯運算計算優先級:先算not ,再算and, 最後算or。

2.數值型

2.1整數型

python中的整型屬於int類型,默認用十進位表示,此外,也支持二進位,八進位,十六進位表示方法。

進位轉換

計算機本質上只認識二進位,但是python裡面的數字還是以十進位展示的, 當然裡面給我們內置了一些方法幫我們把轉換為其他進位。bin()轉化為二進位

oct()轉化為八進位

a = oct(100) # 0o表示這是一個八進位數print(a)
1
2
1
2

hex()轉化為16進位

c=hex(100) # 0x表示這是一個十六進位數print(c)
1
2
1
2



2.2浮點型

浮點數是屬於有理數當中的,Python中的浮點數就是數學當中的小數, 在運算中,整數與浮點數運算的結果依舊是浮點數。

注意:Python默認的是17位 精度,也就是小數點後最多16位。

2.3複數型

語法: a + bj

虛數不能單獨存在,它們總是和一個不為0的實數一起構成一個複數。

實數部分和虛數部分都是浮點數

虛數部分必須有 j 或 J

(1)返回複數的實部

a.real
1
1
a.imag

(2)返回複數的虛部

a.imag
1
1

(3)返回複數的共軛複數

共軛複數

兩個實部相等,虛部互為相反數的複數互為共軛複數。

當虛部不為零時,共軛複數就是實部相等,虛部相反,如果虛部為零,其共軛複數就是自身(當虛部不等於0時也叫共軛虛數)。

2.4數值型數據的類型轉換

轉換為int型

將int(x)轉換成整數類型

如果x是浮點型,小數點後面的數字都會砍掉,注意不是四捨五入。

3.字符串

不可變數據類型

有序數據類型

字符串的兩種定義方式 :

(1)通過str()函數將其他數據類型轉化為字符串

(2)直接加引號定義

3.2字符串的索引和切片

字符串切片的標準語法:

str[開始位置: 終止位置:步長和方向]

開始位置:即開始取的位置,這個位置的元素是能取到的。

終止位置:即停止的位置,注意該位置的值取不到

第三個參數:不寫默認是1,正數表示從左往右取,負數表示從右往左取,絕對值表示步長。

3.3字符串對象的常用方法

(1)3個檢索的方法:

str.count()

str…count(要計數的對象,開始索引值,結束索引值) ——返回的是:你尋找的對象,在字符串裡面出現的次數。

str.find()

str.find(要查找的對象,開始位置,結束位置) ——如果對象包含在字符串內,則返回開始的索引值,否則返回-1。

str.rfind()返回的是最後一次出現的位置。注意:find()返回的是索引值。

str.index()

str.index()方法同find()方法基本一樣,也是用於檢索字符串類是否包含特定的對象,返回的也是索引值 ,只不過如果要檢索的對象如果不存在於字符串內,不會像find()一樣返回-1,而是直接報錯 。

str.rindex()是最後一次出現的位置。

(2)3個分割的方法:

str.split(「分割符」,分割次數)

str.splitlines(True或False) ——按照行分隔,返回一個包含各行作為元素的列表。 字符串.splitlines()按照行(』\r』, 『\r\n』, \n』)分

隔,返回一個包含各行作為元素的列表。 如果參數 keepends 為 False,不包含換行符,如果為 True,則保留換行符。

str.partition(分隔符) ——把str以分隔符為標準,分割成三部分,str前,str和str後。

(3)1個合併的方法 :

str.join(這裡是一個包含字符串的序列)

(4)1個替換的方法:

replace() 字符串.replace(被替換的字符, 用來替換的字符, 替換次數)

字符串是不可變數據類型,這裡的所有操作返回都是新的字符串對象,原來的字符串都是沒有發生變化的,如果想要去除字符串裡面某個字符,可以用replace()方法。 用來替換的字符參數為空字符即可。

(5)1個中心化的方法 :

str.center(寬度, 填充的字符串)

(6)2個字符大小寫轉換方法:

str.lower()轉換str 中所有大寫字符為小寫。

str.upper()轉換 str 中的小寫字母為大寫。

(7)3個去除兩端特殊字符的方法:

去除兩邊—— 字符串.strip(可以傳入指定去除什麼) 。——刪除str字符串兩端的空白字符以及特殊字符 這裡的特殊字符包括制表符\t、回車符\r、換行符\n。

去除單邊

str.rstrip()——只去除右邊的空格和特殊字符。

str.lstrip()——只去除左邊的空格和特殊字符。

(8)字符串的格式化輸出1方法:

str.fromat()的普通形式。

str.format() 接受參數形式。

4.列表

列表是一種可變的數據類型 ,

列表中的數據類型不限 ,

列表中的多個元素之間用逗號進行分割 ,

最外層用[ ]括起來,

列表的兩種定義方式 :

使用list()將其他可疊代的數據類型轉換為列表,

使用[ ]來定義。



4.2列表的索引、切片和修改

列表:有序的序列,所以每一個數據都有唯一對應的索引值。

第一個元素對應的索引值是0,和字符串是一樣的,

語法:列表[開始位置:終止位置:步長和方向],

列表[開始位置:終止位置:步長和方向],開始的位置包含在內,終止的位置不包含在內,

步長的默認值為1,當步長設置為正整數,代表方向從左往右,當步長設置為負整數,代表從後往前進行切片,

起始位置和終止位置,如果不填,代表從頭到尾所有數據

4.3列表對象的常用方法

列表方法之增3方法:

append 語法: 原列表.append(要添加的元素) 在最後添加一個元素。

extend 語法: 原列表.extend(要添加的列表) a.extend(b)是把b每一個元素都添加到a中。

insert 語法: insert(索引,要插入的對象) insert(索引a,b)表示,把b插入到索引a所對應的元素之前。

列表方法之刪4方法:

del list[要刪除元素的索引值]

list.clear() 清空列表所有元素,

list.pop(要刪除元素的索引值) 默認刪除最後一個,並返回這個被刪除的元素,

list.remove(元素名) 用於移除列表中某個值的第一個匹配項, 若列表有多個匹配值,只會刪除第一個,要想多次刪除,需要用到後面學習

列表方法之查2方法:

list.index(尋找的對象,開始索引,結束索引) 獲得某個元素首次出現的索引。

list.count(尋找的對象) 獲得某個元素元素出現次數。

列表方法之排序2方法:

list.sort(reverse=True/False) 此方法會將列表按特定順序重新排列,括號內的參數可以不寫,默認升序排列,reverse的英文意思是翻轉,如果填寫了reverse=True就意味著列表會降序排列。

list.reverse()將list所有元素反轉。

列表的深淺拷貝:

淺拷貝只拷貝容器中元素的地址,

深拷貝,完全拷貝了一個副本,容器內部元素地址都不一樣。

對於深拷貝,目的就是要創建一個玩玩全全獨立的副本,就意味著所有的一切都應該在新的地址上。

1、對於列表或者字典本身,深拷貝結果下,地址是改變了的,也就是說瓶子是換新了的 。

2、所有可變類型的元素也是有了新的地址的。

3、對於不可變類型的元素,地址沒有變,那豈不是相互有影響?不,如果你改變了不可變類型,就會在新的地址下儲存新的數據了,也是沒有影響的。

5.元組

列表是一種可變的數據類型,

列表中的數據類型不限 ,

列表中的多個元素之間用逗號進行分割 ,

最外層用[ ]括起來。

列表的兩種定義方式 :

使用list()將其他可疊代的數據類型轉換為列表,

使用[]來定義。

只含有一個元素的元組的定義,後面必須加一個逗號。

6.字典

字典是一種可變數據類型 ,

點典的元素存儲方式是鍵值對的形式,鍵值對之間用逗號隔開 ,

鍵值對的形式形如:key:value ,

最外層用{}括起來 。

d = {key1 : value1, key2 : value2 }

字典的兩種定義方式:

使用dict()來定義字典,

使用{ }來定義字典。

由於字典是鍵值對的形式,所以字典是無序的,自然不能切片和索引,而是通過鍵來取。

值鍵 一般是唯一的,如果重複最後的一個鍵值對會替換前面的。

值不需要唯一值:可以取任何數據類型,但鍵必須是不可變的,如字符串,數字或元組。

6.1字典對象的常用方法

字典對象之增3方法:

dict[鍵名] = 值 增加一個新的鍵值對。

dict.setdefault(『新鍵名』, 值) 增加一個新的鍵值對。

dict1.update(dict2) 把所有dic2中的鍵值對增加到dic1中 這個功能類似於我們在列表中學的extend()擴展功能。

字典對像之刪5方法:

del 字典名[『鍵名』] —— 刪除指定鍵值對 。

字典名.pop(『鍵名』) —— 刪除鍵值+彈出值。

字典名.popitem() —— 隨機刪除一對(一般最後一對) 。

字典名.clear() —— 刪除詞典內所有元素(和列表對應操作相同) 。

del 字典名 —— 刪除整個詞典(和列表對應操作相同)。

字典對象之查5方法:

dict[鍵] 取出該鍵所對應的值,

dict.get(鍵) 取出該鍵所對應的值 ,

dict.keys() 返回包含所有鍵的列表,這個列表不是嚴格意義上的list,可以用list()轉換成嚴格意義上的列表,

dict.values() 返回包含所有值的列表,這個列表不是嚴格意義上的list,可以用list()轉換成嚴格意義上的列表,

dict.items() 返回包含所有鍵值對的列表,每個鍵值對用元組儲存,這個列表不是嚴格意義上的list,可以用 list()轉換成嚴格意義上的列表 。

7.集合

集合是一種可變數據類型 ,

集合一種無序不重複的集,所有集合的作用主要就是去重 ,

關係測試,測試兩組數據之前的交集、差集、並集等關係。

集合的定義:

使用set()定義集合,

直接使用{}來定義。.

7.1集合對象的常用方法

集合對象之增2方法:

set.add()添加元素 可以通過add(新元素)方法添加元素到set中,但對於已經存在的值不會有效果。

set.update()添加元素。

集合對象之刪3方法:

set.remove()刪除指定元素。

set.pop()隨機刪除一個元素並且返回這個元素。

set.celar()清空集合。

集合的一些簡單運算

in包含運算, 判斷元素是否是集合中的元素

交集set1 & set2—— set1.intersection(set2)

並集set1 | set2—— set1.union(set2


感謝每一個認真閱讀我文章的人!!!

如果下面這些資料用得到的話可以直接拿走:

1、自學開發或者測試必備的完整項目源碼與環境

2、測試工作中所有模板(測試計劃、測試用例、測試報告等)

3、軟體測試經典面試題

4、Python/Java自動化測試實戰.pdf

5、Jmeter/postman接口測試全套視頻獲取

我個人整理了我這幾年軟體測試生涯整理的一些技術資料,包含:電子書,簡歷模塊,各種工作模板,面試寶典,自學項目等。需要的評論區留言或者私信我謝謝

關鍵字: