標籤:python資料類型
*列表產生
*元組
*字典
以下實驗均由2.7版本操作完成
一、列表產生
1.文法:
range(starti stop step) 2.7版本
list(range(starti stop step))) 3.5版本
產生一個從數字1到10的列表;
print(list.pop());a=list(range(1,10));print(a) ## [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
2.通過迴圈產生列表:
文法:[x for x in range(starti,stop)]
第一個“x”:是從第幾開始
第二個“x”:是到第幾個數為止
print([x for x in range(1,11)]);######[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
3.用列表推導式產生100內的大於20的偶數
print [x for x in range(0,101) if x % 2==0 and x>20]
[expr for iter_var in iterable if cond_expr]
加入判斷,只有滿足條件的內容,才把iterable放入到iter中。
b = range(1,11)
print b #[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
c = range(1,11,2)
print c #[1, 3, 5, 7, 9]
二、元組
1.什麼是元組:也是一種容器類型,元組的元素不能修改,元組使用小括弧包裹資料
2.如何建立:在括弧中添加元素,用逗號隔開
tup1=(‘kate‘,‘lisa‘,1997,2000);tup2=(1,2,3,4,5)tup3=‘a‘,‘b‘,‘c‘,‘d‘print(tup1);print(tup2);print(tup3);##(‘kate‘, ‘lisa‘, 1997, 2000)(1, 2, 3, 4, 5)(‘a‘, ‘b‘, ‘c‘, ‘d‘)
3.如何建立空元組
tup=()
元組中只包含一個元素時,需要在元素後面添加逗號
元組與字串類似,下標也是從0開始,可以進行截取組合
4.訪問元組:
元組可以使用下標該問值
tup1=(‘kate‘,‘lisa‘,1997,2000);print(tup1[0:2]);##(‘kate‘, ‘lisa‘)
5.修改元組
元組中的元素值是不允許修改的,但我們可以對元組進行串連組合
eg:
tup1=(‘abc‘,‘def‘);tup2=(‘lisi‘,‘kate‘);tup3=tup1+tup2;print(tup3);##(‘abc‘, ‘def‘, ‘lisi‘, ‘kate‘)
6.刪除元組
元組中的元素是不允許刪除的,可以用del語句來刪除整個元組
del 元組;//執行完語句會報錯
7.元組運算子
組合、複製,運算後產生新的元組
a.len() :顯示列表的長度
b.串連+
c.複製
print((1,2,3)*2)##(1, 2, 3, 1, 2, 3)
d. 元素是否存在 (傳回值為bool值)
print(3 in (1,2,3));##True
e.迭代(迴圈遍曆元組元素)
文法:
for x in 元組:
print(x)
eg:
list=(‘lisi‘,‘kate‘,‘zhangsan‘,‘1900‘);for x in list: print(x);##lisikatezhangsan1900
8.元組截取
a=(‘how‘ ,‘are‘,‘you‘)
a[1]
a[-2]
a[1:] //are you
9.無關閉分隔字元
x,y=1,2
print(x,y) //2.7版本
##
(1, 2)
10.元組內建函數
a.len(t):查看列表長度
b.max(t):列表內最大值
c.min(t):列表內最小值
d.tuple(lists) 將列錶轉換為元組
三、字典
由鍵和值,成對組成的對象,字典也被稱為關聯陣列(hash列表)
對象=資料+方法
1.字典特點:
①.無序(通過鍵實現元素存取)
②.可變: 通過鍵改變值
eg:
x={‘ename‘:‘lisi‘,‘sx‘:100,‘yw‘:90,‘yy‘:60}x[‘ename‘]=‘kate‘print(x);###{‘yy‘: 60, ‘ename‘: ‘kate‘, ‘sx‘: 100, ‘yw‘: 90}
③.異構:支援多種資料類型
④.嵌套:可以在索引值對中的值部分出現字典、列表、元組
x={‘ename‘:‘lisi‘,‘sx‘:100,‘yw‘:90,‘yy‘:(2,3)}x[‘ename‘]=‘kate‘print(x);###{‘yy‘: (2, 3), ‘ename‘: ‘kate‘, ‘sx‘: 100, ‘yw‘: 90}
如果同一個鍵同時出現兩次,後一個值會被記住
2.字典定義:
方法一:{key1:value1,key2:value2...}key1必須用引號包裹
注意:字典中的鍵必須是唯一的,而值可以不唯一
方法二:dict() 內建函數,指定健值
x=dict(ename=‘fbb‘,sx=95,yw=65)
該問字典裡的值:x[‘ename‘]
x=dict(ename=‘fbb‘,sx=95,yw=65);print(x[‘ename‘]);###fbb
3.修改字典裡的值:
文法:x[key]=value
添加新元素:x[newkey]=newvalue
x={‘a‘:1,‘b‘:2,‘c‘:3};x[‘c‘]=5;print(x);###{‘a‘: 1, ‘c‘: 5, ‘b‘: 2}
4.刪除字典元素 (x字典)
1刪除字典中的元素
del x[‘key‘]
2.清空字典所有條目
x.clear()
3.刪除整個字典
del x(x為字典名)
5.變數解包:items( )將字典轉化為鍵、值作為元組的列表
文法:x.items()
eg:
x={‘a‘:1,‘b‘:2,‘c‘:3};print (x.items());###[(‘a‘, 1), (‘c‘, 3), (‘b‘, 2)]
只取鍵:keys()
x.keys()
x={‘a‘:1,‘b‘:2,‘c‘:3};print(x.keys());###[‘a‘, ‘c‘, ‘b‘]
只取值:values()
x.values()
x={‘a‘:1,‘b‘:2,‘c‘:3};print(x.values());###[1, 3, 2]
has_key():判斷是否存在某個鍵,返回結是bool值
x.has_key(‘鍵‘)
eg:
x={‘a‘:1,‘b‘:2,‘c‘:3};print (x.has_key(‘a‘));###True
len():取得字典中索引值對個數
len(x)
eg:
x={‘a‘:1,‘b‘:2,‘c‘:3};print(len(x));###3
update():在原字典上合并字典,鍵相同時會覆蓋
文法:x1.update(x2);
x1={‘a‘:1,‘b‘:2,‘c‘:3};x2={‘a‘:3,‘d‘:4,‘e‘:5};x1.update(x2);print(x1);####{‘a‘: 3, ‘c‘: 3, ‘b‘: 2, ‘e‘: 5, ‘d‘: 4}
本文出自 “清風與你” 部落格,謝絕轉載!
python資料類型—列表、元組、字典