列表
-
列表是什么
由一系列按特定順序排列的元素組成既棺。(可以存儲多種類型的數(shù)據(jù)也可以嵌套列表)讽挟。
如果直接打印列表,會將方括號也一起打印出來援制。
數(shù)組:存儲同一種數(shù)據(jù)類型的集合戏挡。
列表:(打了激素的數(shù)組。)可以存儲任意數(shù)據(jù)類型的集合晨仑。一個變量存儲多個信息褐墅。 - 列表的特性
索引、切片洪己、重復妥凳、連接、成員操作符答捕、for循環(huán)遍歷.
切片:格式:【start:end:step】
step為步長逝钥,步長為正時從左到右,步長為負時拱镐,從右到左艘款。
切片返回的結果不包含結束索引,即不包含最后一位
-1代表最后一個位置的索引沃琅。
列表的重復
列表的連接
列表的成員操作符
for循環(huán)遍歷
列表的查看
列表的刪除
1哗咆、使用del,從內存中刪除益眉,不可以再訪問晌柬。
2姥份、使用pop()方法刪除。從列表中刪除并且可以繼續(xù)使用他的值年碘。默認彈出最后一個元素澈歉。
3屿衅、使用remove
根據(jù)值刪除元素埃难。
-
列表的修改
通過索引重新賦值
通過切片
通過切片可以一次修改列表指定片段的元素而通過索引修改一次只能更改一次 -
列表的增加
append:追加
extend:增加一個列表,即增加多個元素
insert:指定位置添加元素
-
列表的排序
按照ascii碼排序
sort永久排序傲诵,sorted臨時排序
a.sort(key=str.lower)
a.sort(key=str.upper)
對字符串排序不區(qū)分大小寫
對數(shù)字順序逆序排列
a.sort(reverse=True)
將原有的列表的順序打亂
import random
a=list(range(10)
random.shuffle(a)
元組
- 元組的特性
不可變的列表稱為元組凯砍。由于元組的值是不可變的所以不能給元祖的元素賦值。但是如果元組里面包含可變數(shù)據(jù)類型時拴竹,可以間接修改元組內容
索引、切片剧罩、連接栓拜、重復、成員操作符惠昔。
索引以及不可賦值
切片
重復
成員操作符
當元組里只有一個元素時要加逗號
可以看出元組和列表不一樣阿 -
元組的應用場景
1幕与、變量交換數(shù)值
先把a,b封裝成一個元組
b,a = a,b
b =(1,2)[0] a=(1,2)[1]
print a,b
2镇防、打印變量值
name = 'westos'
age = 10
t = (name,age)
print 'name: %s,age: %d' %(name,age)
print 'name: %s,age: %d' %t
3啦鸣、元組的賦值:有多少個元素就用多少個變量接收
t = ('westos',10,100)
name,age,score = t
print name,age,score
注意!sorted處理過的元組會返回一個列表此時重新賦給a来氧,a就不指向之前的那個元組了诫给,元組也沒有發(fā)生改變。
集合
集合里面的元素是不可以重復的啦扬。
-
集合的特性中狂。
集合只支持成員操作符與for循環(huán)。
-
集合的定義
定義一個空集合
如何定義一個空集合
s2 = {}
print type(s2)
s3 = set([])
print s3,type(s3)
集合的應用
li = [1,2,3,1,2,3]
print list(set(li))
字典
-
字典的定義
字典是一個無序的數(shù)據(jù)集合扑毡,使用print輸出字典的時候通常輸出的順序和定義的順序不一致的胃榕。
- 字典的特性
成員操作符(默認判斷key值是否存在)、for循環(huán)(默認循環(huán)遍歷字典中的key值) -
字典的刪除
d = dict(a=1, b=2,c=3)
pop:彈出指定的key-value值
d.pop('a')
print d
print d
d.popitem()
print d
del d['a']
print d
- 字典的修改與查看
d.keys()
d.values()
d.items()
以上返回的為一個列表
遍歷
for k,v in service.items():
print k,'---->',v
for k in service:
print k,'----->',service[k]
print service['https']
get方法
if 'https' in service:
print service['https']
else:
print 'key not exist'
get方法獲取指定key對應的value值
如果key值存在瞄摊,返回對應的value值
如果key值不存在勋又,默認返回None,如果需要指定返回值,傳值即可
print service.get('http','key not exist')
- 字典的增加
d = dict(a=1, b=2)
print d
添加或者更改key-value對
d['g'] = 10
print d
d['a'] = 10
print d
update:
如果key值存在换帜,更新value值
如果key值不存在楔壤,添加key-value值
d.update({'a':4,'f':1})
print d
setdefault
如果key值已經(jīng)存在,不做修改
如果key值不存在膜赃,添加key-value值
d.setdefault('a',10)
print d
- 枚舉
返回索引值和對應的value值
接上