一、常用資料處理方法、
1、索引:按照號碼將對應位置的資料取出使用
l=[1,2,3]
print(l[0])
print(l[1])
print(l[2])
====>12
3
2、list將任意型別資料用逗號分割存在列表中
l=[1,2,3]
print(l)
====>
[1, 2, 3]
3、range:產生一堆數字(取值:顧頭不顧尾)
l=range(0,10)
print(l)
for i in l:
print(i)
====>
range(0, 10)01
2345
6789
4、切片:可以從複製資料的一部分,不影響資料本身,(顧頭不顧尾)
格式:資料[頭:尾:步長]
步長:隔幾位取一次,預設為一
l=[1,2,3,4,5,6,7,8,9,0]
print(l[4])
print(l[0:6])
print(l[2:7:2])
print(l[:-1])
====>
5[1, 2, 3, 4, 5, 6]
[3, 5, 7]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
5、len長度:
計資料的個數
也可計算字串長度
l=range(0,10)
print(len(l))
s='lalala'
print(len(s))
====>
106
6、成員運算in和not in
l=[1,2,3,4,5,6,7,8,9,0]
print(11 in l)
print(1 in l)
print(11 not in l)
print(1 not in l)
===>
false
true
true
false
l=[1,2,3,4,5,6,7,8,9,0]
print(l)
====>
[1, 2, 3, 4, 5, 6, 7, 8, 9, 0, 9]
8、insert插入:
l=[1,2,3,4,5,6,7,8,9,0]
l.insert(4,10)
print(l)
===>
[1, 2, 3, 4, 10, 5, 6, 7, 8, 9, 0]
同樣也沒有返還值可利用
9、刪除:
(1)萬能刪除
del:同樣遵循切片的格式
l=[1,2,3,4,5,6,7,8,9,0]
print(l[0:7:2])
del l[0:7:2]
print(l)
===>
[1, 3, 5, 7]
[2, 4, 6, 8, 9, 0]
(2)指定元素刪除
remove:只能刪除乙個,有多個相同資料的刪除目標時,只刪除左邊第乙個
l=[1,2,3,4,5,6,7,8,9,6]
l.remove(6)
print(l)
====>
[1, 2, 3, 4, 5, 7, 8, 9, 6]
(3)指定索引刪除,返回刪除的元素
pop:每次只能剪出乙個資料
l=[1,2,3,4,5,6,7,8,9,6]
print(l.pop(5))
print(l)
====>
6[1, 2, 3, 4, 5, 7, 8, 9, 6]
10、迴圈
for:for 後面跟隨乙個變數名它會一次一次 被in後面的資料賦值覆蓋,直到將其中資料取完為止,每取一次值就會將for下面的資料執行一次
格式:for i in 迭代的資料:
in後面可以跟隨字串,列表,字典,元祖
count=0
l=(1,2,3,4,5,6,7,8,9,6)
for i in l:
count+=1
print(count)
====>12
3456
78910
11、計算某資料出現次數
count:
l=(1,2,3,4,5,6,7,8,9,6)
print(l.count(0))
print(l.count(6))
====>
02
12、將資料拆開加入列表
extend:只能對可變資料使用(字串一直就不在三界之內qwq)
s=
l=[1,2,3,4,5,6,7,8,9]
s.extend(l)
print(s)
print(l)
s.extend('hahaha')
print(s)
====>
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 'h', 'a', 'h', 'a', 'h', 'a']
13、資料兩極反轉
revrese:
l=[1,2,3,4,5,6,7,8,9]
l.reverse()
print(l)
====>
[9, 8, 7, 6, 5, 4, 3, 2, 1]
14、清空
clear:只能對可變資料使用
l=[1,2,3,4,5,6,7,8,9]
l.clear()
print(l)
====>
15、拷貝:即複製資料對應記憶體的id
淺拷貝:= 直接複製,不管資料什麼型別都拷貝,且賦值物件資料改變,被複製物件也改變
l=[1,2,3,4,5,6,7,8,9]
s=lprint(l)
print(s)
print(id(l))
print(id(s))
print(l[0] is s[0])
====>
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
1541153683776
1541153683776
true
深拷貝:from copy import deepcopy 即只拷貝不可變資料,遇到可變資料則向下找不可變資料,且會重新建立乙個可變資料
l=[1,2,3,4,5,6,7,8,9]
s=l.copy()
print(l)
print(s)
print(id(l))
print(id(s))
print(l[0] is s[0])
====>
[1, 2, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
2375861729600
2375891085376
true
from copy import deepcopy
l=[1,2,3,4,5,6,7,8,9]
s=deepcopy(l)
l[1]=999
print(l)
print(s)
====>
[1, 999, 3, 4, 5, 6, 7, 8, 9]
[1, 2, 3, 4, 5, 6, 7, 8, 9]
Python常用的內建函式(物件操作)
class objectoperator unittest.testcase 返回物件或者當前作用域內的屬性列表 def test dir self print dir math 返回物件的唯一識別符號 位址值 def test id self a hello world print id a 獲取...
Python常用的內建函式(反射操作)
class reflection unittest.testcase 檢查物件是否含有屬性 def test hasattr self o testa zhangsan print hasattr o,name print hasattr o,age 獲取物件的屬性值,如果給的屬性不存在則會拋異常,...
Python常用的內建函式(變數操作)
import unittest 定義在class def外的是全域性變數 out out class variableoperator unittest.testcase 在class裡面,定義全域性變數需要global關鍵字先申明,讓程式知道該變數是全域性變數,否則當普通變數處理 global i...