Pyhon第二讲:
-
列表
-
列表是干嘛的:列表用list表示使用[ ]来存放数据,每一项用逗号隔开,列表能存放的数据较多,处理起来也较容易 ,能装对象的对象 是一个可变的数据类型与str不一样
lst = ["移动硬盘","笔记本","鼠标",101,["人民币","美金","欧元"]] #这是一个列表存放的是对象的对象
-
索引和切片:
lst = ["海上迪斯尼","暴力小子","舌尖上的中国","邋遢大王历险记","情定之下"] print(lst[1]) print(lst[1:4:1]) # 骨头不顾尾 print(lst[-1:-4]) #执行不了 print(lst[-3:-1]) #切片顾头不顾尾 print[lst[-1]] #索引 print(lst[1].[3]) print(lst[1:2][0][3:4]) #列表价字符串擦操作
-
增删改查
lst =['小梦','小明','老师','哇哈','哈哈'] lst.append("马化腾") # 末尾添加 print(lst) lst.insert(0,"阿布") # 插入可以选择插入地方 print(lst) lst.extend("霍夫曼") # 按照迭代规律进行 print(lst) lst.extend(['sssf','ss','aa']) print(lst) pop remove del lst[1:4] lst.clear() del lst[1:4] #增删改查 # lst = ["王者荣耀",'和平精英','切西瓜','小猪佩奇']
lst[0]="扫雷" 替换操作
# # print(lst) # lst[1:3]= '小李飞刀' # 迭代添加 # print(lst) # lst[1:3] =['小李飞刀'] #迭代添加先删除后添加d # print(lst) # lst.pop(1) # lst.remove("王者荣耀") # lst.clear() # lst.insert(0,'像梦一场') # lst.extend(["QQ大乱斗",'猎鹰穿','黑猫警长']) # lst.append("黑风没") # lst.pop(4 and 3) # lst.remove("黑风没") # lst.clear() # del lst[1:3] # print(lst) # for el in lst: #迭代法查找元素 # print(el)
-
-
列表的嵌套
lst = ["王者荣耀",'和平精英','切西瓜','小猪佩奇',[1,'卡布奇诺']] lst[4][0] =lst[4][0]+99 #属于降维操作 lst[4][1]=lst[4][1].replace("卡布奇诺",'heigeer') print(lst)
-
其他操作
-
sort默认升序 reverse=True 降序 count 计数器 reverse将列表反转倒置 len()内置函数
#lst = ["王者荣耀",'和平精英','切西瓜','小猪佩奇',[1,'卡布奇诺']] # lst[4][0] =lst[4][0]+99 #属于降维操作 # print(lst) # count= lst.count([100,'卡布奇诺']) # print(count) lst = [1,2,34,5,6,7,7,8,0] lst.sort(reverse=True) #sort 排序 升序排序 reverse = true降序排列 lst.sort() #升序排列 print(lst) lst.reverse() #两极反转 头尾颠倒 互换位置 print(lst) lst =["ss","sss","ssss"] lst.reverse() print(lst)
-
-
元组 : 元组就是只读列表不能对其中元素进行修改 “只能看啥都不能干”
-
元组俗称是不可变的列表,又被称为只读列表,元组也是python的基本数据类型之一,用小括号括起来,里面可以存放任何数据类型的数据,元组只能进行索引切片俗称查找,不支持修改,循环也可以
-
元组本身不可变但是如果要进行该变也不是不行,如果子元素可变,就可以对元组的子元素的子元素进行更改,比如是个列表列表是个可变的数据类型,所以列表中的元素就可以更改,如果元组中包括列表则可以对列表中的子元素进行更改而不是直接对元组进行变换
-
range是一个可迭代对象-| 可迭代是指能够用for循环将元组中的元素打印并加上索引值
-
range(10)打印出的元素是0-9:range(1,10) 1-9 range(1,10,2)隔俩去一个切片运算类似于等差数列
lst =["阿巴贡","红警","马克思","恩格斯"] for c in range(len(lst)): print(c) print(lst[c]) #起始位置:终止位置:步长 顾头不顾尾 range(,,)
-
py2 中 range xrange 迭代器
-
字典
-
dict 用{}表示 键值对数据 {key:value } 唯一性
-
键都必须是可哈希的 不可变的数据类型就可以当成字典中的键
-
增
dic['贝斯手']='某多轮' #增 dic.setdefault('人头狗','诺手') #添加操作
-
删 pop通过key删除返回value的值 name = dic.pop("") print(name) ->>name ==value
# dic ={1:"摸摸腿",2:"摸摸大",3:"龙抬头"} # dic[4] ='压力地方' # dic.setdefault(5,'wuge') # print(dic) dic ={'伊达氏':'剑圣','火女':"人头狗",'剑豪':'托儿所'} # dic['u大师率'] = "大宝剑" #强制增加或者强制改变 # dic.setdefault('义军好','机关枪') #增加操作 如果字典中存在就不能执行本语句 # print(dic) dic.pop("剑豪",'火女') print(dic) del dic['伊达氏'] print(dic) dic.clear() print(dic) ret = dic.popitem() #默认删除最后一个
-
改
dic1 ={'爱版大':'后裔','亚瑟':'榨菜','黑玫瑰':'就立刻'} dic1['亚瑟']='sege' print(dic1) dic.update(dic1) print(dic) # 用后面里的更新前面的
-
查
dic[''] # // 查到返回返回值查不到报错 dic.get() # //查找操作 查到返回值,查不到返回NONE或者自定义内容 dic.setdefault() # // 查找查到
-
字典的其他操作
keys() values() items()
-
字典的嵌套
#{[{[{[]}]}]}
总结:
""" 对字典进行操作 dic ={"name":'hanmeimei','wife':{"name":"telunsu","age":"seven","hobby":'dance'},"child":"babkiu"} #增加字典中的键值对 dic["friend"] = "alex" dic.setdefault("hobby",'playgames') print(dic) #删除操作 #dicf = dic.pop('friend') dic.popitem() # del dic['child'] print(dic) #print(dicf) #改查 dic1={"name":[{"王菲":'king','苏菲亚':'kingdom','龙日一':"sun"},{'果宝特攻':'friut',"leishen":'gold'}]} dic["name"] = '哇哈哈' dic.update(dic1) print(dic) #查找 for el in dic: print(el) dic2 = dic.setdefault('name') print(dic2) dic3 = dic["friend"] print(dic3) print(dic[]) #遍历查找""" """ keys() 获取字典中所有的key,并将返回值保存在一个高仿列表中 value() 获取自典中的value ,并将返回值保存在高仿列表中 items() 获取的是键值对,以元组的形式存放在在高仿列表中 字典中的建必须是可哈西的,也就是不可变的数据,可哈希 结构: a,b =(1,2) """
作业讲解
今日内容
- 小数据池 :-5 ~ 256 pycharm并不是这样 但是在python那种确实如此
- is 与等于 == 的区别 小数据池的范围
- 字符串中如果有特殊符号那么他们的内存的值就不一样
- == 比较 比较的是两边的值
- is 比较的是内存 内存地址 id()
-