for循环
-
for关键字 i变量(可以人为修改) in关键字 s可迭代对象(int,bool)
占位:pass和... range() # 范围 python3打印是它自己本身 python2打印是列表 range(起始位置,终止位置,步长) range(10) -- range(终止位置) 起始位置0
列表
-
什么是列表:
-
list [] 它就是列它是由多个元素组成,每一个元素中间要用逗号来隔开。
-
定义的方式:列表相当于以个“容器”什么都可以放进去比如字符串,数字,布尔值列表里面还可以放列表。
-
li=list("abc") 相当于在底层使用了for循环,"abc"就是可迭代的字符串类型。print打印li出来的是["a","b","c"]
-
-
列表可以干什么:
- 列表可以储存大量的数据,而字符串是储存少量的数据。
- 列表是有序的,还是以0开头,从左到右的顺序依次输出。
- 列表里面的内容是可以在本身操作修改的。
-
如何使用列表:
- 列表是有序的所以它支持索引,切片和步长。
- 同时它又是可以改变的可以支持增加,删除,修改,查找。
-
列表要怎么使用:
-
增加:
- .append(),这是追加,括号里的内容会添加在列表的末尾,添加操作。变量.append("伊拉克")
- .insert(),这是插入,括号里的第一个内容是(索引)也就是先找到你需要插入的位置,第二个参数就是你需要插入的内容。变量.insert(0,"伊拉克")。它的效率低。
- .extend(),这是扩展也就是迭代添加,相当于for循环。变量.extend("abc")
- 列表和列表可以相加,也就是合并。
-
删除:
- .pop(),pop删除之后有返回值,返回值就是删除掉的内容。它默认删除的是最后的内容。也可以通过索引来指定删除。变量.pop(1)。
- .remove(),删除,它是按照元素名来进行删除,指定删除。变量.remove("abc")
- del,是一个关键字比如 del 变量:就将整个列表都删除了,del变量[]支持索引删除,切片删除和步长删除。
- .clear()它是用来清空列表内的东西,变量.clear()
-
改:
-
变量[索引位置]="修改的内容"。li[0:2] = "ABC"迭代进去的可以多也可以少。
-
索引,切片,步长。步长是你定几个就是几个不能多也不能少。
li = ["水杯",2,3,"abc",] li[0:3:2] = [1,2,3],[1234] print(li)
-
-
查:
- 变量=列表,print(变量[索引])
- for em in 变量 : print(em)
-
列表的嵌套:
- 变量 = [列表] print(变量[索引][索引][索引][索引][索引][索引][索引][索引])
-
元祖
- 什么是元祖tuple:
- tu = ("1",) # () 每个元素都以 逗号隔开
- 小括号中一个元素的时候没有逗号就括号中元素的本身
- 小括号中一个元素的时候有个逗号就是元组
- 空的小括号就是元组
- 元祖是有序的:可以用索引,切片,步长,元祖是不可以改变的数据类型。元祖和列表很像,但是元祖是不可以进行修改的。
- 元祖可以干什么:可以储存一些你不想让其他人修改的数据,元祖也是一个容器,也可以储存一些任意的类型。
- 在哪里可以用到:在配置文件中,程序中,也是为了防止失误操作修改一些数据。
- 列表转换元祖:tuple([1,2,3]) , 元祖转换列表:list((1,3,4))
字典
1.字典是什么dict
- {"键":"值"}这就是字典。其他的语言叫键值对数据。
- 键:必须是可哈希的,也就是不可以改变的数据类型,并且是唯一的。
- 值:什么都可以也就是任意。
- 字典是无序的,在python3.6版本以上就默认了自己定义的顺序,python3.5以下是随机显示的,没有任何的顺序。
- 字典是可以改变的,增加,删除,修改,查看等其他的操作。
- 字典可以干什么:
- 字典是存储大量的数据,字典比列表还有大的多。
- 字典在查找值的时候更快更方便。
- 字典能够将数据进行关联:dic =
- 字典的缺点就是比较的消耗内存,最常用的数据就是字符串,列表和字典。
- 在有明确的对应关系时,推荐使用字典,字典很重要一定要用明白。
2.字典怎么用
-
增加:
- print(dic.setdefault({"键":"值"}))添加的时候先查一下键存不存在如果存在的话就不会再添加了,如果不存在就添加。
- dic["键"]="值"字典中不存在这个键的话就直接添加进去了。
-
删除:
- .pop("键"):通过键来删除pop和列表的用法一样具有返回值。
- 一定要记住字典中没有remove。
- del 变量 删除整个字典。
- del 变量["键"] 删除指定的键值对。
- .clear() 直接清空,删除整个字典中的键值对。
-
改:
- 变量 [ " 键 " ] = " 值 "键在字典中存在就是修改,键在字典中不存在就是增加。
- 变量 . update ( 变量1 ) update括号中字典的级别高。
-
查:
- 字典中的查询只能通过键来获取值而不能通过值来获取键。
- 如果键在字典中的话则返回键对应的值,如果没有的话就报错。
- get获取:print(dic.get(" 键 "," 指定返回的内容 "))获取值的时候可以指定返回的内容,键不存在的时候不会报错。
-
字典的嵌套:一层一层的剥开, 剥开一层的时候索引从0开始.
dic = { 101:{1:["周杰伦","林俊杰"],2:{"汪峰":["国际章",{"前妻1":["熊大","熊二"]}, {"前妻2":["葫芦娃","木吒"]}]}}, 102:{1:["李小龙","吴京","李连杰"],2:{"谢霆锋":["张柏芝","王菲"]}, 3:["alex","wusir","大象","奇奇"]}, 103:{1:["郭美美","干爹"],2:{"王宝强":{"马蓉":"宋哲"}}}, 201:{1:["凹凸曼","皮卡丘"],2:{"朱怼怼":{"杨幂":"刘恺威"}}}} print(dic[101][2]["汪峰"][2]["前妻2"][0]) ['国际章', {'前妻1': ['熊大', '熊二']}, {'前妻2': ['葫芦娃', '木吒']}] {'前妻2': ['葫芦娃', '木吒']} ['葫芦娃', '木吒'] home1 = dic[102][3][2] {1: ['李小龙', '吴京', '李连杰'], 2: {'谢霆锋': ['张柏芝', '王菲']}, 3: ['alex', 'wusir', '大象', '奇奇']} print(home1) print(dic[103][2]["王宝强"]["马蓉"])