str
4、列表
創(chuàng)建列表:
1 2 3 | name_list = [ 'alex' , 'seven' , 'eric' ]
或
name_list = list ([ 'alex' , 'seven' , 'eric' ])
|
基本操作:
- 索引
- 追加
- 刪除
- 長度
- 切片
- 循環(huán)
- 包含
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | #索引:
該方法返回查找對象的索引位置,如果沒有找到對象則拋出異常
name_list.index( 'alex' )
#追加:
# extend() 函數(shù)用于在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表)。
c = [ 'aaaaa' , 'bbbbb' ]
name_list.extend(c)
或者:
name_list.append( 'aaaa' )
#刪除:
del name_list[ 1 ]
#長度:
len (name_list)
#切片: (原來是什么類型,切片取出來的元素還是原來的類型!)
li = [ 'aaaa' , 'bbbbb' , 'ccccc' ]
print (li[ 0 : 2 ])
#['aaaa','bbbbb']
#循環(huán):
for i in name_list:
print (i)
#包含:
'alex' in name_list:
#關(guān)注:
name_list.clear()
name_list.extend()
name_list.reverse()
name_list.insert( 1 , "X" )
|

list
5、元組
創(chuàng)建元組:
1 2 3 | ages = ( 11 , 22 , 33 , 44 , 55 )
或
ages = tuple (( 11 , 22 , 33 , 44 , 55 ))
|
基本操作:
1 2 3 4 5 6 7 8 9 10 11 | 元組 tuple
t = ( 11 , 22 , 33 )
tuple ( "123123123" ) = > ( '1' , '2' , '3' , '1' , '2' , '3' , '1' , '2' , '3' )
tuple ([])
# 元組的特性,不可修改. 元素不可修改!
t = ( 11 , 22 ,[ "alex" , { "k1" : "v1" }])
t[ 2 ].append( "asdas" )
#(11, 22, ['alex', {'k1': 'v1'}, 'asdas'])
|
tuple
元組與列表區(qū)別: 元祖里面的值不能修改!
6、字典(無序)
創(chuàng)建字典:
1 2 3 4 5 6 7 | person = { "name" : "mr.wu" , 'age' : 18 }
或
person = dict ({ "name" : "mr.wu" , 'age' : 18 })
#列表轉(zhuǎn)換成字典
li = [ 11 , 22 , 33 ]
new_dict = dict ( enumerate (li, 1 ))
#只能用enumerate!!! 單獨用li 沒有keys !
|
常用操作:
- 索引
- 新增
- 刪除
- 鍵、值、鍵值對
- 循環(huán)
- 長度
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | #索引:
info_dict[ 'name' ]
#新增: ( 原來沒有則添加,有則修改! )
info_dict[ 'new' ] = 'new'
info_dict.update({ 'new' : 'new' })
#刪除:
del info_dict[ 'new' ]
info_dict.pop( 'new' )
#鍵:
info_dict.keys()
#值:
info_dict.values()
#鍵值對:
info_dict.items()
循環(huán):
for k in info_dict.keys():
print (k)
for v in info_dict.values():
print (v)
for k,v in info_dict.items():
print (k,v)
長度:
len (info_dict)
|
dict

formkeys
其他
1、for循環(huán)
用戶按照順序循環(huán)可迭代對象中的內(nèi)容,
PS:break、continue
1 2 3 | li = [ 11 , 22 , 33 , 44 ]
for item in li:
print item
|
2、enumerate
為可迭代的對象添加序號
1 2 3 | li = [ 11 , 22 , 33 ]
for k,v in enumerate (li, 1 ):
print (k,v)
|
3、range和xrange
指定范圍,生成指定的數(shù)字
1 2 3 4 5 6 7 8 | print range ( 1 , 10 )
# 結(jié)果:[1, 2, 3, 4, 5, 6, 7, 8, 9]
print range ( 1 , 10 , 2 )
# 結(jié)果:[1, 3, 5, 7, 9]
print range ( 30 , 0 , - 2 )
# 結(jié)果:[30, 28, 26, 24, 22, 20, 18, 16, 14, 12, 10, 8, 6, 4, 2]
|
練習(xí)題
一、元素分類
有如下值集合 [11,22,33,44,55,66,77,88,99,90],將所有大于 66 的值保存至字典的第一個key中,將小于 66 的值保存至第二個key的值中。 即: {'k1': 大于66的所有值, 'k2': 小于66的所有值}

View Code
二、查找
查找列表中元素,移除每個元素的空格,并查找以 a或A開頭 并且以 c 結(jié)尾的所有元素。
li = ["alec", " aric", "Alex", "Tony", "rain"]
tu = ("alec", " aric", "Alex", "Tony", "rain")
dic = {'k1': "alex", 'k2': ' aric', "k3": "Alex", "k4": "Tony"}

View Code
三、輸出商品列表,用戶輸入序號,顯示用戶選中的商品
商品 li = ["手機", "電腦", '鼠標墊', '游艇']

View Code
四、購物車
1 2 3 4 5 6 | goods = [
{ "name" : "電腦" , "price" : 1999 },
{ "name" : "鼠標" , "price" : 10 },
{ "name" : "游艇" , "price" : 20 },
{ "name" : "美女" , "price" : 998 },
]
|

View Code
五、用戶交互,顯示省市縣三級聯(lián)動的選擇
1 2 3 4 5 6 7 8 9 10 11 12 13 | dic = {
"河北" : {
"石家莊" : [ "鹿泉" , "藁城" , "元氏" ],
"邯鄲" : [ "永年" , "涉縣" , "磁縣" ],
}
"河南" : {
...
}
"山西" : {
...
}
}
|
|