python基本資料結構:列表,元組及字典
一、列表
一組有序專案的集合。可變的資料型別【可進行增刪改查】
列表是以方括號「」包圍的資料集合,不同成員以「,」分隔。
列表中可以包含任何資料型別,也可包含另乙個列表
列表可通過序號訪問其中成員
常用列表操作:
list.pop()刪除成員,刪除第i個成員
list.count(x)計算列表中引數x出現的次數
list.remove()刪除列表中的成員,直接刪除成員i
list.extend(l)向列表中追加另乙個列表l
list.reverse()將列表中成員的順序顛倒
list.index(x)獲得引數x在列表中的位置
list.sort()將列表中的成員排序
list.insert()向列表中插入資料insert(a,b)向列表中插入資料
可》help(list) 檢視方法詳情
print("-------list operations------")
#列表操作
l = [1,2,3,4,5]
l2 = [7,8,9]
print(l)
#獲得列表長度
length = len(l)
print(length)
#追加乙個元素,在列表最後一位
print(l)
#向列表中追加另乙個列表
l.extend(l2)
print(l)
#插入乙個元素,在位置a
l.insert(0,0)
print(l)
#將列表順序顛倒
l.reverse()
print(l)
#排序,從小到大
l.sort()
print(l)
#統計某個元素出現的次數
c = l.count(0)
print(c)
#查詢某個引數在列表中的位置,未命中則拋異常
i = l.index(1)
print(i)
#刪除某個位置的成員
l.pop(0)
print(l)
#直接刪除某個值的成員,若有多個,刪除第乙個
l.remove(1)
print(l)
結果:
列表補充:2011-4-17
#列表操作補充--切片操作
example = [0,1,2,3,4,5,6,7,8,9]
#列印某一區間 左閉右開
print(example[4:8])
#想包含最後乙個
print(example[4:])
#包含首個
print(example[:8])
#所有的
print(example[:])
#第三個引數為步長
print(example[1:8:2])
#倒序輸出
print(example[::-1])
#列表合併
a = [1,2,3]
b = [4,5,6]
print(a+b)
#替換
ex = [1,2,3,4,5,6]
ex[4:]=[9,8,7]
print(ex)#將56換為987
#插入
ex[1:1] = [0,0,0]
print(ex)
#刪除
del ex[0:2]
print(ex)
#或者
ex[6:]=
print(ex)
#比較
one = [1,2,3]
two = [1,2,3]
print(one == two)#true
print(one is two)#false
#列表操作補充——字串也是列表
str = "abcdefg"
print(str[0])
#將乙個字串轉為字元陣列
print(list(str))
#字串
s = "abcdefg"
#判斷是否包含
print('a' in s)
#函式和模組
import math
#將乙個變數指向乙個函式
se = math.sqrt
print(se(81))
se = math.sqrt
print(se(81))
結果:二、元組
不可變序列
元組是以圓括號「()」包圍的資料集合,不同成員以「,」分隔
與列表不同:元組中資料一旦確立就不能改變
通過下標進行訪問
宣告:l=(1,2,3)
含0個元素的元組: l = ()
含1個元素的元組:l=(1,) 注意有逗號
#元組操作
#宣告
o =('a','b','c',('d1','d2'))
o1 = ()
o2 = (1,)
#訪問
print(o[0])
print(o[3][0])
#用於列印語句
age = 22
name = 'tom'
print("%s is %d years old"%(name,age))
三、字典
鍵值對的集合(map)
字典是以大括號「{}」包圍的資料集合
與列表區別:字典是無序的,在字典中通過鍵來訪問成員。
字典是可變的,可以包含任何其他型別
宣告:m=
訪問 m[k1]將得到v1
常用字典操作:
dic.clear()清空字典
dic.keys()獲得鍵的列表
dic.values()獲得值的列表
dic.copy()複製字典
dic.pop(k)刪除鍵k
dic.get(k)獲得鍵k的值
dic.update()更新成員,若成員不存在,相當於加入
dic.items()獲得由鍵和值組成的列表
dic.popitem
可以通過
#字典操作
m =
print(m)
#讀取某乙個_通過key
print(m['a'])
#讀取某乙個,通過get方法
print(m.get('b'))
#複製字典
m2 = m.copy()
print(m2)
#獲取所有鍵的列表
print( m.keys() )
#獲取所有值的列表
print( m.values() )
#獲取所有鍵值對元組組成的列表
print( m.items() )
#更新成員,當對應鍵值不存在時,相當於加入
m.update()
print(m)
#刪除某個成員
m.pop('a')
print(m)
四、序列的索引和切片
列表、元組和字串都是序列
序列的兩個主要特點是索引操作符和切片操作符。
索引操作符讓我們可以從序列中抓取乙個特定專案。即下標操作,用方括號和數字抓取某個位置的專案,l[0]抓取第乙個元素,l[-1]抓取最後乙個元素
切片操作符讓我們能夠獲取序列的乙個切片,即一部分序列。方括號加一對可選數字,切出某個子片l[1:3] 返回1-2的子片,l[2:]從2開始到最後,l[:]整個
Python基本資料結構 列表
有序的集合 通過偏移來索引,從而讀取資料 支援巢狀 可變的型別 舉例說明 a 1,2,3,4,5,6,7 正向索引 a 0 4 1 1,2,3,4 反向索引 a 1 4 1 7,6,5 預設索引 a 1 2,3,4,5,6,7 列表的拷貝 傳值 b a 生成乙個新的列表。c a b extend 接...
Python基本資料結構 列表
列表 1.有序的集合 2.通過偏移來索引,從而讀取資料 3.支援巢狀 4.可變的型別 列表的操作 1.切片 a 1,2,3,4,5,6,7 正向索引 反向索引 預設索引 2.新增操作 1 生成新的列表 2 extend 接受引數並將該引數的每個元素新增到原有列表中,在原位址修改列表而不是新建列表。4...
三 Python的基本資料結構 列表
1 列表 列表的切片 正向索引,反向索引 a 1,2,3,4,5,6,7 print a 0 4 1 正向索引 print a 1 4 1 反向索引 2 列表新增操作 生成乙個新的列表 extend 接受引數並將該引數的每個元素都新增到原有的列表中,原地修改列表而不是新建列表 insert 插入任意...