python字典下标是什么_python列表、元组、字典
1.列表
列表是由一序列特定順序排列的元素組成的。可以把字符串,數字,字典等都可以任何東西加入到列表中,列表中的元素之間沒有任何關系。列表也是自帶下標的,默認也還是從0開始。列表常用方括號表示,即:[],元素用逗號隔開。
例子:
a = ["huangzhenping","laoma",123]
print(a)
print(type(a))
說明:list 里面的元素的數據類型也可以不同;list 元素也可以是另一個 list,例:
list2 = ['python', 'java', ['asp', 'php'], 'scheme']
常用功能:
append:追加
例子:
a = ["huangzhenping","laoma","laozhao"]
print(a)
a.append("song")
print(a)
index:返回下標位置
a = ["huangzhenping","laoma","laozhao"]
print(a[0],a[2])
print(a.index("laoma"))
insert:往什么位置插入對象
a = ["huangzhenping","laoma","laozhao"]
a.insert(1,"song")
print(a)
pop:刪除末尾元素
a = ["huangzhenping","laoma","laozhao"]
a.pop()
print(a)
remove:自定義刪除
a = ["huangzhenping","laoma","laozhao"]
a.remove("huangzhenping")
print(a)
sort:排序(升序)
a = [1,3,6,7,4]
a.sort()
print(a)
reverse:反序
a = [1,3,6,7,4]
a.reverse()
print(a)
切片:(從1至5,2為步長)
a = [1,2,3,4,5,6,7,8,9,10]
print(a[0:4:2])
2.元組
tuple 和 list 非常類似,但是 tuple 一旦初始化就不能修改,tuple唯一和list定義的區別就是[]變成了(),它也沒有 append(),insert()這樣的方法
例子:
a ="abcdefghijkmn"
print(tuple(a))
print(type(tuple(a)))
注:有逗號時,為元組類型
例子:
a = ("hello")
print(a)
print(type(a))
b = ("hello",)
print(b)
print(type(b))
結果:
hello
('hello',)
tuple常用方法:
count:統計元組中相同元素的個數
a = ("a","b","c","a")
print(a.count("a"))
index:元組中某元素第一次出現的下標
a = ("a","b","c","d")
print(a.index("d"))
3.字典
字典是由花括號{}來包含其數據的,花括號內包含鍵(key)和其對應的值(value),一對鍵和值成為一個項,鍵和值用冒號:隔開,項和項之間用逗號,隔開,空字典就是不包含任何項的字典,也可理解為空字典就是花括號內不包含任何內容,直接使用花括號{}表示.
字典賦值有三種方式:
例子:
a = {'name':'huang','age':'20'}
b =dict(name="huang",age=20)
c=dict([('name','huang'), ('age',20)]) ? #序列中也是一個序列或元組
print(type(a))
print(type(b))
print(type(c))
結果:
例子:
a =dict(name="li",age=28)
print(a)
print(type(a))
說明:避免 key 不存在的錯誤的兩種辦法:
一是通過 in 判斷 key 是否存在:
'Thomas' in dict1 ? #
二是通過 dict 提供的 get 方法:
如果 key 不存在,可以返回 None(無結果)
自動識別為dict類型,把等于號和逗號看成冒號
例子:
a =dict({("name","li"),("age",28)})
print(b)
print(type(b))
字典常用功能:
clear:清空字典
copy:復制
get:獲取信息,沒有則返回為空
例子:
a = {"name":"li","age":28}
print(a.get("name"))
setdefault:存在則不變,不存在則設置一個值
例子:
a = {"name":"li","age":28}
print(a.setdefault("name","huangzhenping"))
print(a.setdefault("address","shenzhen"))
print(a)
keys:獲取所有鍵(對象)
例子:
a = {"name":"li","age":28}
print(a.keys())
values:獲取所有對象的值
例子:
a = {"name":"li","age":28}
print(a.values())
iteritems:一般用于for循環,一個一個取出來(避免占內存)
例子:
a = {"name":"li","age":28}
print(a.iteritems())
forx,yina.iteritems():
print(x,y)
pop:刪除對象key,實際上對應的值沒有被刪
例子:
a = {"name":"li","age":28}
a.pop("name")
print(a)
字典的高級操作
fromkeys:將一個列表引入字典中,并設置一個默認值
例子:
list1=["a","b","c"]
dict1={}
n=dict.fromkeys(list1,"test")
print(n)
print(type(n))
zip:將兩個列表疊加成一個列表,如果要變成字典,則dict(zip(l1,l2))
list1=["a","b","c"]
list2=["d","e","f"]
list3=zip(list1,list2)
print(list3)
print(type(list3))
print(dict(list3))
update:將dirct_test字典和k字典合并
dict1={"a":"zhang","b":"huang"}
dict2={"c":"zhao","d":"sun"}
dict1.update(dict2)
print(dict1)
sorted:對字典排序,lambda是一個匿名函數,reverse = False 升序
dict1=dict(a=1,c=3,d=4,b=2,e=5)
print(dict1)
printsorted(dict1.iteritems())
printsorted(dict1.iteritems(),key=lambdad:d[1],reverse=False)
4.set集合
set 和 dict 類似,也是一組 key 的集合,但不存儲 value。由于 key 不能重復,所以,在 set
中,沒有重復的 (key重復元素在 set 中自動被過濾)
add(key)方法可以添加元素到 set 中
例子:
s = set([1, 1, 2, 2, 3, 3])
s.add(4)
remove(key)方法可以刪除元素
例子:
s.remove(4)
說明:set 可以看成數學意義上的無序和無重復元素的集合,因此,兩個 set 可以做數學意義上的
交集、并集等操作
5.幫助
查看數據類型:print(type(variable))
查看屬性:dir(variable)
查看幫助:help(sorted)
看具體源碼: Ctrl + 鼠標左鍵
6.變量的強制轉換
例子:
把list1作為key,list2作為value,生成一個新的字典
a = [1,2,3,4,5,6,7]
b = ['a','b','c','d','e','f','g']
dict(zip(a,b))
例子:
兩個字典的合并
dict1={1:[1,11,111],2:[2,22,222]}
dict2={3:[3,33,333],4:[4,44,444]}
dictMerged1=dict(dict1.items()+dict2.items())
dictMerged2=dict(dict1,**dict2)
總結
以上是生活随笔為你收集整理的python字典下标是什么_python列表、元组、字典的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 怪物行为树案例_Behavior Des
- 下一篇: php转java知乎_做了三年多的php