<3>.字典大小
通过len函数来获取字典大小:
len(a)
这里给出例子:
语法:
dict[key]
获取字典中指定标签的数据值
更新指定标签的数据项
keys函数:返回字典中的所有标签,语法:
a.keys()
values函数:返回字典中所有的数据值,语法:
a.values()
items函数:将每个数据项表示为二元元组返回所有的数据项,语法:
a.items()
这里给出例子:
判断字典中是否存在某个标签
语法:
”name“ in dict
判断字典中是否存在某个数据项
语法:
20 in dict。values()
在介绍集合之前,我们先来想象一个”标签带“,保存标签的一个袋子
通过改造字典的类型,去掉关联的数据值,只留下标签的新容器类型
集合是不重复元素的无需组合
花括号命名法或set()
语法:
a={}
a=set()
可用set()创建空集,可用set()从其他序列转换生成集合
集合会自动忽略重复数据,集合中不能加入可变类型的数据
add函数:增加一个元素,语法:
a.add(n)
update函数:批量增加数据,语法:
a.update(b)
通过这个例子我们也能看到:集合会自动忽略重复数据
remove/discard函数:删除指定数据,语法:
a.remove(要删除的数据)
a.discard(要删除的数据)· pop函数:删除任意数据并返回,语法:
a.pop()
clear函数:清空集合,语法:
a.clear()`
我们看到remove和discard函数都能删除指定数据,那么他俩的区别在哪呢?
我们通过一个空集就能看到区别:
我们可以看到,当在集合中找不到指定数据时,remove函数会报错,但是discard函数不会报错,这就时它俩的区别
in操作:判断元素是否属于集合,语法:
n in a(集合)
pop操作:该操作随机返回(如果你了解底层,你应该知道它是按照压栈顺序,逆序删除)一个元素,并删除,语法:
a(集合).pop()
同我们爱爱数学中学过的一样,集合可以做各种运算和判断:
运算
|
说明
|
”a|b"
|
求并集
|
a&b
|
求交集
|
a-b
|
求a集合和b集合的差
|
关系判定:
在Python中,我们可以用<=,=,>来判断两集合的关系(子集,真子集,超集,真超集)。
我们还可以通过isdisjoint函数来判断两级和是否为空。
1.快速去除重复元素
2.判断元素是否在一组数据中
在Python中,我们还可以建立复杂的数据结构,在次之前,我们回顾一个建立各种容器的符号:
符号
|
容器
|
下标索引方式
|
[ ]
|
列表
|
int
|
()
|
元组
|
int
|
{}
|
字典
|
key
|
我们可以创建三个列表(元组),然后将这三个列表(元组)嵌套到一个新的列表中:
字典的元素可以是任意类型,甚至可以是字典
字典的key可以是任意不可变类型
例:用元组作为坐标,索引元素
我们将输入和输出比作生产线,有来料(输入),来料加工,产品展示(输出)。
来料:用户输入,input函数
产品展示:程序输出,print函数
input函数:
input(提示内容)
括号中可以写提示内容:
我们可以看到,input函数返回我们输入的内容,程序中大多需要我们保存这个值到变量,我们就可以用一个变量来接收输入的内容:
我们可以看到:变量a成功接收到了我们输入的内容。
print函数:
print(要输出的内容)
我们来看看print函数的原型:
print(*objects, sep=' ', end='\n', file=sys.stdout)
sep:表示变量之间用什么字符隔开,缺省为空格
end:表示这个字符串以什么结尾,缺省为换行
file:指定文本将要发送的文件,标准流或其他类似的文件对象,默认是sys.stdout
%d(转化为十进制),%s(转化为字符串),%(u1,u2)
print(xxxxxx %dxxxxxx%x(u1,u2))
其中 %s就是格式化符,意思是把后面的值格式化为字符类型,类似的格式化符还有%d,%f等,详见
Python格式化字符串
。
也可以用元组的形式传值,后面的u1,u2就是要格式化的值,不论是字符还是数值,都会被格式化为格式化符对应的类型。