列表和元组的一些笔记
#列表 # 1. 列表格式 # 2. 列表中可以嵌套任何类型 li = [1,2,3,["分割线",23,45],"sljfg",True,(23,),{"jiwei":23},] #列表中的元素可以是 数字,字符串,列表,布尔值,元组,字典 print(li) # 3索引,索引从0开始计数, print(li[0])#li[0]对应li中的第一个元素1 #4 切片,输出后还是列表 print(li[1:-1])#其中-1是右边第一个元素,[1:-1]是切片从左边第二个元素到右边第一个元素之间元素 #5for循环 li = [1,2,3,["分割线",23,45],"sljfg",True,(23,),{"jiwei":23},] for item in li: print(item) #6 索引 li = [1,2,3,["分割线",23,45],"sljfg",True,(23,),{"jiwei":23},] li[0] = 10 #可以数字和改成其他类型 print(li) li[1] = [2,3,456] # 删除 del li[1] print(li) #7 切片 li = [1,2,3,["分割线",23,45],"sljfg",True,(23,),{"jiwei":23},] li[2:4] = [234,3455] print(li) # 删除某段切片 del li[1:3] print(li) # 8in 的操作 li = [1,2,3,["分割线",23,45],"sljfg",True,(23,),{"jiwei":23},] w ="sljfg" in li print(w) # 9字符串可以直接转换成列表 b = "suogiwoehgoiahgiai" new_list = list(b) print(new_list) # 列表转换成字符串 li = [11,22,33,"123","alex"] r = str(li) # 将列表改变成字符串'[11,22,33,"123","alex"]' print(r) # 将字符串拼接打印 s = "" for i in li: s = s + str(i) print(s)
元组
# 1. 书写格式 # tu = (111,"alex",(11,22),[(33,44)],True,33,44,) # 一般写元组的时候,推荐在最后加入 , # 元素不可被修改,不能被增加或者删除 # 2. 索引# v = tu[0] # print("索引:",v) # 3. 切片 # v = tu[0:2] # print("切片:",v) # 4. 可以被for循环,可迭代对象 # for item in tu: # print(item) # 5. 转换 # s = "asdfasdf0" # li = ["asdf","asdfasdf"] # tu = ("asdf","asdf") # # v = tuple(s) # print("字符串转换元组:",v) # v = tuple(li) # print("列表转换元组:",v) # v = list(tu) # print("元组转换字符:",v) # v = "_".join(tu) # print(v) # li = ["asdf","asdfasdf"] # li.extend((11,22,33,)) # print("extend(在列表末尾添加元素:",li) # 6.元组的一级元素不可修改/删除/增加 # tu = (111,"alex",(11,22),[(33,44)],True,33,44,) # # 元组,有序。 # # v = tu[3][0][0] # # print("查找元组中多级子元素:",v) # # v=tu[3] # # print(v) # tu[3][0] = 567 # print(tu)
字典
# 字典 # dic = { # "k1": 'v1', # "k2": 'v2' # } # 1 根据序列,创建字典,并指定统一的值 # v = dict.fromkeys(["k1",123,"999"],123) # print("fromkeys()可以对多个键统一赋值:",v) # 2 根据Key获取值,key不存在时,可以指定默认值(None) # dic = { # "k1": 'v1', # "k2": 'v2' # } # v = dic['k11111'] # print("根据Key获取值,key不存在时报错:",v) # v = dic.get('k1',111111) # print("根据Key获取值,key不存在时get返回默认值(None):",v) # 3 删除并获取值 # dic = { # "k1": 'v1', # "k2": 'v2' # } # v = dic.pop('k1',90) # print("删除并获取值:",dic,v) # k,v = dic.popitem() # print("删除并获取值:",dic,k,v) # 4 设置值, # 已存在,不设置,获取当前key对应的值 # 不存在,设置,获取当前key对应的值 # dic = { # "k1": 'v1', # "k2": 'v2' # } # v = dic.setdefault('k1111','123') # print(dic,v) # 5 更新 # dic = { # "k1": 'v1', # "k2": 'v2' # } # dic.update({'k1': '111111','k3': 123}) # print(" 更新字典中的元素,相同的替换值,不同的添加:",dic) # dic.update(k1=123,k3=345,k5="asdf") # print(" 更新字典中的元素,相同的替换值,不同的添加:",dic) # 6 keys() 7 values() 8 items() get update ########## # 1、基本结构 # info = { # "k1": "v1", # 键值对 # "k2": "v2" # } #### 2 字典的value可以是任何值 # info = { # "k1": 18, # "k2": True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # print(info) #### 3 列表、字典不能作为字典的key # info ={ # 1: 'asdf', # "k1": 'asdf', # False: "123", # # [11,22]: 123 # (11,22): 123, # # {'k1':'v1'}: 123 # # } # print(info) # 4 字典无序 # info = { # "k0":23, # "k1": 18, # "k2": True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # print("字典的排列无序使用id可以明显看到:",id(info)) # 5、索引方式找到指定元素 # info = { # "k10":23, # "k1": 18, # 2: True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # v = info['k1'] # print(v) # v = info[2] # print(v) # v = info['k3'][5]['kk3'][0] # print("查找指定元素",v) # 6 字典支持 del 删除 # info = { # "k1": 18, # 2: True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # del info['k1'] # print("字典支持删除某个键值对:",info) # del info['k3'][5]['kk1'] # print("字典支持删除多级子元素:",info) # 7 for循环 # dict # info = { # "k1": 18, # 2: True, # "k3": [ # 11, # [], # (), # 22, # 33, # { # 'kk1': 'vv1', # 'kk2': 'vv2', # 'kk3': (11,22), # } # ], # "k4": (11,22,33,44) # } # for item in info: # print("info输出所有键的key:",item) # # for item in info.keys(): # print("info.keys()输出所有键的key:",item) # # for item in info.values(): # print("info.values()输出所有value:",item) # # for item in info.keys(): # print(item,info[item]) # # for k,v in info.items(): # print("输出键值对;",k,v)