今天我们来讲一讲python中的字典与集合
Dictionary:字典 Set:集合
字典的语法:Dictionary字典(键值对)
语法: dictionary = {key:value,key:value,key n:value n} 与 C# dictionary同理
创建一个字典:#eg: 创建一个Dictionary
dictionary = {"Q1":"22654613","Q2":"32156498"}
Dictionary 具有的方法:
dic.get(key,[default]):用于获取对应键的值; dic.items():用于获取所有的键值对;
dic.key:用于获取所有的键 dic.value:用于获取所有的值
下面一一进行演示:
输出在dictionary字典中键为:"Q1"的值print(dictionary.get("Q1"))
输出结果如下:22654613
使用for循环遍历字典中的键值对for i in dictionary.items():
print(i)
输出结果如下:('Q1', '22654613')
('Q2', '32156498')
使用for循环遍历键for i in dictionary.keys():
print(i)
输出结果如下Q1
Q2
使用for循环遍历值for i in dictionary.values():
print(i)
输出结果如下:22654613
32156498
通过键来修改字典中对应的值dictionary["Q1"] = "111111"
print(dictionary["Q1"])
输出结果如下:111111
添加键值对dictionary["Q3"] = "321654"
print(dictionary["Q3"])
输出结果321654
删除键值对的方法:
dic.clear()清空字典 del dictionaryName[key]删除对应的键值对
删除指定的一个键值对del dictionary["Q1"]
for i in dictionary.items():
print(i)
输出结果('Q2', '32156498')
('Q3', '321654')
清空字典dictionary.clear()
for i in dictionary.items(): #清空后是没有输出内容的
print(i)
因为清空了所以是没有输出结果的
集合语法:
setName = [value1,value2,value3,value4] setName:集合名 valueN:值
下面我们创建一个集合stus = ["巩祎鹏","王佳明","张倩","李宁风"]
之后我们根据索引(下标)输出对应的值
(索引/下标,类似于字典中的键,只不过索引是固定的系统默认好的,
索引从0开始逐个晚上叠加,同时在字典中也对应着相应的值,
不过如果下标在集合中相对应的没有值,那么就会出现报错:索引越界)
输出索引为0的对应值print(stus[0])
输出结果如下:巩祎鹏
同时集合也有类似于字符串的切边,原理相同,不懂得可以去翻翻之前的随笔
集合切片print(stus[0:5:1])
输出结果['巩祎鹏', '王佳明', '张倩', '李宁风']
使用for循环遍历数组for i in range(len(stus)):
print(stus[i])
输出结果如下巩祎鹏
王佳明
张倩
李宁风
使用while循环遍历数组i = len(stus)-1 #len是集合的内置函数 返回值为集合的长度(集合内元素的个数)
while i+1:
print(stus[i])
i-=1
输出结果如下李宁风
张倩
王佳明
巩祎鹏
添加元素并遍历stus.append("大马猴")
i = len(stus)-1
while i+1:
print(stus[i])
i-=1
输出结果如下大马猴
李宁风
张倩
王佳明
巩祎鹏
删除元素del stus[0]
print(stus[0:5])
输出结果如下['王佳明', '张倩', '李宁风', '大马猴']
值得注意的是集合中的元素被删除后,后面的元素后自动将前一个元素的所以给补上
所以这个时候如果我们输出stus[0],输出的结果为print(stus[0])
#结果为
王佳明
python基础篇:
《第一章python语言的简介》
《第二章python开发环境与开发教程》
《第三章python函数的基本定义和调用以及内置函数》
《第四章python中类的声明,使用,属性,实例属性,计算属性及继承,重写》
《第五章python中字符串String的基本内置函数与过滤字符串模块函数的基本用法》
《第六章python中的字典与集合》
我觉得讲的也差不多了,python基础也就这么多了.后续都是爬虫,人工智能,与大数据的一些相关的问题了,这些东西我学的还不是很熟练,也就是在这些方面我还是个newbie,所以我决定缓一阵子,等我将这些领域多少有一些涉及以及有一些自己的学习笔记与见解的时候再与大家各位读者分享.