<3>.字典大小

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

这里给出例子:

image

<4>.字典的标签索引

语法: dict[key]

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

更新指定标签的数据项

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

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

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

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

这里给出例子:

image

3.在字典中查找

in操作

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

语法: ”name“ in dict

image

in和values函数组合

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

语法: 20 in dict。values()

image

三.集合

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

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

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

1.创建集合

花括号命名法或set()

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

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

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

image

2.集合的操作

<1>.增长集合

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

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

image

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

<2>.缩减集合

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

image

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

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

image

我们可以看到,当在集合中找不到指定数据时,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

嵌套列表(元组)

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

image

嵌套字典

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

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

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

五.输入和输出

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

来料:用户输入,input函数

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

1.输入

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

image

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

image

我们可以看到:变量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就是要格式化的值,不论是字符还是数值,都会被格式化为格式化符对应的类型。

R和Python平台下操作读写稀疏矩阵(matrix.mtx.gz格式文件)的基本方法
将大型矩阵保存为稀疏矩阵格式特别有助于减少存储空间和提高数据处理的效率,因此本文将分享在R和Python平台下操作读写稀疏矩阵的基本方法。