Python容器类型及对容器的操作,输入和输出(下)

简介: Python容器类型及对容器的操作,输入和输出(下)

<3>.字典大小

通过len函数来获取字典大小:len(a)

这里给出例子:

<4>.字典的标签索引

语法:dict[key]

获取字典中指定标签的数据值

更新指定标签的数据项

<5>.访问字典中的数据项

keys函数:返回字典中的所有标签,语法:a.keys()

values函数:返回字典中所有的数据值,语法:a.values()

items函数:将每个数据项表示为二元元组返回所有的数据项,语法:a.items()

这里给出例子:

3.在字典中查找

in操作

判断字典中是否存在某个标签

语法:”name“ in dict

in和values函数组合

判断字典中是否存在某个数据项

语法:20 in dict。values()

三.集合

在介绍集合之前,我们先来想象一个”标签带“,保存标签的一个袋子

通过改造字典的类型,去掉关联的数据值,只留下标签的新容器类型

集合是不重复元素的无需组合

1.创建集合

花括号命名法或set()

语法:a={}a=set()

可用set()创建空集,可用set()从其他序列转换生成集合

集合会自动忽略重复数据,集合中不能加入可变类型的数据

2.集合的操作

<1>.增长集合

add函数:增加一个元素,语法:a.add(n)

update函数:批量增加数据,语法:a.update(b)

通过这个例子我们也能看到:集合会自动忽略重复数据

<2>.缩减集合

remove/discard函数:删除指定数据,语法:a.remove(要删除的数据)a.discard(要删除的数据)· pop函数:删除任意数据并返回,语法:a.pop() clear函数:清空集合,语法:a.clear()`

我们看到remove和discard函数都能删除指定数据,那么他俩的区别在哪呢?

我们通过一个空集就能看到区别:

我们可以看到,当在集合中找不到指定数据时,remove函数会报错,但是discard函数不会报错,这就时它俩的区别

<3>.访问集合中的元素

in操作:判断元素是否属于集合,语法:n in a(集合)

pop操作:该操作随机返回(如果你了解底层,你应该知道它是按照压栈顺序,逆序删除)一个元素,并删除,语法:a(集合).pop()

<4>.集合运算,集合判断

同我们爱爱数学中学过的一样,集合可以做各种运算和判断:

运算 说明
”a|b" 求并集
a&b 求交集
a-b 求a集合和b集合的差

关系判定:

在Python中,我们可以用<=,=,>来判断两集合的关系(子集,真子集,超集,真超集)。

我们还可以通过isdisjoint函数来判断两级和是否为空。

3.什么时候用集合?

1.快速去除重复元素

2.判断元素是否在一组数据中

四.建立复杂的数据结构

在Python中,我们还可以建立复杂的数据结构,在次之前,我们回顾一个建立各种容器的符号:

符号 容器 下标索引方式
[ ] 列表 int
() 元组 int
{} 字典 key

嵌套列表(元组)

我们可以创建三个列表(元组),然后将这三个列表(元组)嵌套到一个新的列表中:

嵌套字典

字典的元素可以是任意类型,甚至可以是字典

字典的key可以是任意不可变类型

例:用元组作为坐标,索引元素

五.输入和输出

我们将输入和输出比作生产线,有来料(输入),来料加工,产品展示(输出)。

来料:用户输入,input函数

产品展示:程序输出,print函数

1.输入

input函数:input(提示内容)括号中可以写提示内容:

我们可以看到,input函数返回我们输入的内容,程序中大多需要我们保存这个值到变量,我们就可以用一个变量来接收输入的内容:

我们可以看到:变量a成功接收到了我们输入的内容。

2.输出

print函数:print(要输出的内容)

我们来看看print函数的原型:print(*objects, sep=' ', end='\n', file=sys.stdout)

sep:表示变量之间用什么字符隔开,缺省为空格

end:表示这个字符串以什么结尾,缺省为换行

file:指定文本将要发送的文件,标准流或其他类似的文件对象,默认是sys.stdout

3.格式化字符串

%d(转化为十进制),%s(转化为字符串),%(u1,u2)

print(xxxxxx %dxxxxxx%x(u1,u2))

其中 %s就是格式化符,意思是把后面的值格式化为字符类型,类似的格式化符还有%d,%f等,详见Python格式化字符串

也可以用元组的形式传值,后面的u1,u2就是要格式化的值,不论是字符还是数值,都会被格式化为格式化符对应的类型。

相关文章
|
2月前
|
存储 索引 Python
Python散列类型(1)
【10月更文挑战第9天】
|
2月前
|
计算机视觉 Python
Python实用记录(一):如何将不同类型视频按关键帧提取并保存图片,实现图片裁剪功能
这篇文章介绍了如何使用Python和OpenCV库从不同格式的视频文件中按关键帧提取图片,并展示了图片裁剪的方法。
79 0
|
2月前
|
存储 数据安全/隐私保护 索引
Python 散列类型三以及函数基础
【10月更文挑战第11天】
Python 散列类型三以及函数基础
|
2月前
|
Python
【10月更文挑战第6天】「Mac上学Python 11」基础篇5 - 字符串类型详解
本篇将详细介绍Python中的字符串类型及其常见操作,包括字符串的定义、转义字符的使用、字符串的连接与格式化、字符串的重复和切片、不可变性、编码与解码以及常用内置方法等。通过本篇学习,用户将掌握字符串的操作技巧,并能灵活处理文本数据。
55 1
【10月更文挑战第6天】「Mac上学Python 11」基础篇5 - 字符串类型详解
|
2月前
|
Python
【10月更文挑战第6天】「Mac上学Python 10」基础篇4 - 布尔类型详解
本篇将详细介绍Python中的布尔类型及其应用,包括布尔值、逻辑运算、关系运算符以及零值的概念。布尔类型是Python中的一种基本数据类型,广泛应用于条件判断和逻辑运算中,通过本篇的学习,用户将掌握如何使用布尔类型进行逻辑操作和条件判断。
63 1
【10月更文挑战第6天】「Mac上学Python 10」基础篇4 - 布尔类型详解
WK
|
2月前
|
存储 Python
Python内置类型名
Python 内置类型包括数字类型(int, float, complex)、序列类型(str, list, tuple, range)、集合类型(set, frozenset)、映射类型(dict)、布尔类型(bool)、二进制类型(bytes, bytearray, memoryview)、其他类型(NoneType, type, 函数类型等),提供了丰富的数据结构和操作,支持高效编程。
WK
18 2
|
2月前
|
存储 编译器 索引
Python 序列类型(2)
【10月更文挑战第8天】
Python 序列类型(2)
|
2月前
|
存储 C++ 索引
Python 序列类型(1)
【10月更文挑战第8天】
|
2月前
|
存储 Java Apache
Python Number类型详解!
本文详细介绍了 Python 中的数字类型,包括整数(int)、浮点数(float)和复数(complex),并通过示例展示了各种算术操作及其类型转换方法。Python 的 `int` 类型支持任意大小的整数,`float` 类型用于表示实数,而 `complex` 类型用于表示复数。此外,文章还对比了 Python 和 Java 在数字类型处理上的区别,如整数类型、浮点数类型、复数类型及高精度类型,并介绍了各自类型转换的方法。尽管两种语言在语法上有所差异,但其底层逻辑是相通的。通过本文,读者可以更好地理解 Python 的数字类型及其应用场景。
53 2
|
2月前
|
Java 程序员 C++
【Python】动态类型、输入和输出、条件语句
【Python】动态类型、输入和输出、条件语句
24 0