Day05_Python@lisongye - 元组/字典
- ------------------------------START------------------------------
lsy_01 类:元组(tuple)
元组(tuple)可以理解为特殊的list,对列表的二次加工。
-
表示方式
tu = (1,12.9,‘age’,[“李松野”,“lisongye”],‘lsy’,True,)
推荐写元组的时候,在后边加上逗号(,),区分元组和函数。
元组的一次元素不可被修改,不能被增加或者删除。如果元素是列表,是可以被修改的。 -
索引
tu = (1,12.9,‘age’,[“李松野”,“lisongye”],‘lsy’,True)
print(tu[3])
print(tu[3][1])
[‘李松野’, ‘lisongye’]
lisongye -
切片
tu = (1,12.9,‘age’,[“李松野”,“lisongye”],‘lsy’,True)
print(tu[3:5])
([‘李松野’, ‘lisongye’], ‘lsy’) -
for循环,可迭代对象
tu = (1,12.9,‘age’,[“李松野”,“lisongye”],‘lsy’,True)
for i in tu :
print(i)
1
12.9
age
[‘李松野’, ‘lisongye’]
lsy
True -
转换
tu = (1,12.9,‘age’,[“李松野”,“lisongye”],‘lsy’,True)
tu3 = (‘age’,‘123’,‘lsy’,)
li = list(tu) #元组转为列表
print(li)
tu2 = tuple(li) #列表转为元组
print(tu2)
str1 = “_”.join(tu3) #元组转为字符串,不能有数字
print(str1)str2 = ‘’
for i in tu:
str2 += str(i)
print(str2) -
出现次数:count
tu = (1,12.9,‘age’,[“李松野”,“lisongye”],‘lsy’,True)
print(tu.count(‘age’))
1
lsy_02 类:字典(dict)
-
表示方式
dic = {“k1”: ‘v1’,“k2”: ‘v2’}
“k1”: 'v1’被称为一个键值对。
“k1”:key部分不能是列表和字典;
“v1”:value可以是任何值。 -
根据序列,创建字典,并指定统一的值:dict.formkeys
n = dict.fromkeys([123,456,789],1)
print(n)
{123: 1, 456: 1, 789: 1} -
根据Key获取值,key不存在时,可以指定默认值(None):get
dic = {1:“lsy1”,2:“lsy2”,3:“lsy3”,4:444}
print(dic.get(3))
lsy3 -
删除并获取值:pop
dic = {1:“lsy1”,2:“lsy2”,3:“lsy3”,4:444}
print(dic.pop(3))
print(dic)
lsy3
{1: ‘lsy1’, 2: ‘lsy2’, 4: 444} -
设置值:setdefault
已存在,不设置,获取当前key对应的值
不存在,设置,获取当前key对应的值
dic = {1:“lsy1”,2:“lsy2”,3:“lsy3”,4:444}
print(dic.setdefault(5,‘000’))
print(dic) -
更新:update
已存在,更改为新值;不存在,添加到尾部。
dic = {1:“lsy1”,2:“lsy2”,3:“lsy3”,4:444}
dic.update({‘k1’: ‘111111’,1: 123})
print(dic) -
索引方式找到指定元素
dic = {‘1’:‘lsy1’,2:‘lsy2’,3:‘lsy3’}
print(dic[‘1’])
lsy1 -
删除:del
dic = {‘1’:‘lsy1’,2:‘lsy2’,3:‘lsy3’}
del dic[2]
print(dic)
{‘1’: ‘lsy1’, 3: ‘lsy3’} -
for循环
dic = {‘1’:‘lsy1’,2:‘lsy2’,3:‘lsy3’}
for i in dic.keys():
print(i)
for n in dic.values():
print(n)
for v in dic.items():
print(v)
1
2
3
lsy1
lsy2
lsy3
(‘1’, ‘lsy1’)
(2, ‘lsy2’)
(3, ‘lsy3’)
lsy_03 整理(必会的)
-
数字:
int类型,bit_length() -
字符串:
replace/find/join/strip/startswith/split/upper/lower/format
tempalte = “i am {name}, age : {age}”
v = tempalte.format(name=‘alex’,age=19)
v = tempalte.format(**{“name”: ‘alex’,‘age’: 19})
print(v) -
列表:
li = [11,44,22,55,33]
li[0] = 00
print(li)
[0, 44, 22, 55, 33]
字符串生成后不可修改,但列表可修改。 -
切片修改列表元素:
append、extend、insert
索引、切片、循环 -
元组:
忽略
索引、切片、循环
以及元素不能被修改 -
字典
get/update/keys/values/items -
布尔值
0 1
bool(…)
None “” () [] {} 0 ==> False
- E-mail:lisongye@126.com
- WeChat:baobeilsy
- Copyright © lisongye All Rights Reserved
- ------------------------------END------------------------------