变量用来记录状态的变化。
可变类型与不可变类型:修改变量的值,ID值不变,则为可变数据类型,如果修改变量的值,ID变了,则该变量为不可变类型。
1.不可变类型:字符串,数字,元组,用frozenset()创建的集合为不可变集合。没有add()等方法。
2.可变数据类型:列表,字典,集合
访问顺序分类:
1.顺序访问:字符串,列表,元组
2.映射:字典
3.直接访问:数字
存放元素个数:
1.容器类型:列表,元组,字典
2.原子类型:数字,字符串
集合定义及基本操作:
定义:由不同元素组成的集合,集合中是一组无序排列的hash值,可以作为字典的key特性:
集合的目的是将不同的值存放到一起,不同的集合间用来作关系运算,无序纠结于集合中的单个值。
集合的特性:
1.不同元素组成
2.无序
3.集合中元素必须是不可变类型
集合使用{}来创建,也可以使用set()来创建。
集合常用的方法:
add()向集合添加元素。
pop()删除集合中的元素,随机删
remove()删除集合中的元素,但是删除指定的元素,所以有参数,但是如果删除集合中没有的元素将会出现错误。
clear()清空集合。
discard()方法删除集合中的元素,如果指定删除的元素不存在,不会出现错误。
集合关系运算交,差,并集。
集合之间的交集可以使用符号&来实现,也可以使用intersection()函数来实现。
集合之间的并集可以使用符号“|”来实现,也可以使用union()函数来实现。
集合之间的差集可以使用符号“-"或者使用difference()函数来实现。
集合的其他内置方法:
交叉补集
注意:集合当中的<=,>=是求集合的子集或者父集,issubset()是求子集,issuperset()是求父集。返回值为TRUE或FALSE。
add()方法只能给集合中添加一个值,但是update()方法可以添加多个值,union()函数不更新集合,只是求并集。
集合可以用来去重,可以将一个列表转化为集合,使用set(列表),也可以将一个集合转化为列表,使用list(集合)方法;
字符串格式化:
+只可以将字符串拼接,顺序不能变。使用%s可以进行任意位置的插入,比如
print("i am %s my hobby is alex" %"zhangya")结果为i am zhangya my hobby is alex
当字符串中要插入多个值是,使用如下格式
print("i am %s my hobby is %s" %("zhangya","alex"))结果为i am zhangya my hobby is alex
总结:当插入多个值时,使用(“字符串1”,“字符串2”),两个字符串之间使用逗号隔开
注意:%s可以接受任何类型的值传进去,但是%d不可以,只能接受数字类型的。如
print("i am %s my hobby is %s" %("zhangya",1))结果为i am zhangya my hobby is 1
但是下面这个将会出错
print("i am %s my hobby is %d" %("zhangya","zhang")),
Traceback (most recent call last):
File "C:/Users/张亚萍/PycharmProjects/untitled16/bianliang.py", line 1, in <module>
print("i am %s my hobby is %d" %("zhangya","zhang"))
TypeError: %d format: a number is required, not str
浮点数的打印使用%f,默认小数点后保留六位,不够的补0,进行可四舍五入。但是可以使用格式控制进行截取。如
print("i am %.2f" %250.444) 结果为i am 250.44
打印%号时,两个%%代表一个%。
另一种打印字符串的方法;
结果为“i am alex age 18”,这种方式是以字典的形式传递值的。
要想出现分隔符,则使用如下格式,最好不要使用+,而是使用sep
如print("q","i","p",sep=":")结果为q:i:p
format()方法实现字符串的连接:
传入字典的 时候使用**,传入列表的时候使用*。
老师博客里面可以看看format()方法。
https://www.cnblogs.com/wupeiqi/articles/5484747.html
函数:
函数名()是调用函数,调用函数可以带参数,也可以不带参数,看函数的定义中有没有参数,如果没有,则不带参数,否则要带参数。
必须记住,python是按行执行的,如果定义了同名函数,python只识别后一个函数,调用的时候必然是调用后一个,变量也一样,即出现可变量和函数的同名,后一个将前一个进行覆盖。
函数用来实现特定的功能。
没有返回值的函数叫做过程。
参数类型有实参和形参,形参不占用内存空间,只有实参才占用内存空间。
函数的执行过程中,只要你遇到一个return就结束了,但是一个return 可以返回多个值。加上判断,有多个return,但是函数只能执行一个return。
3.位置参数和关键字参数(标准调用:实参与形参位置一一对应;关键字调用:位置无需对应,混合参数必须遵循一个原则,即位置参数必须在关键字参数的前面。)
4.默认参数
5.参数组,可以接受多个值,当编写程序不确定参数个数时,可以使用*args参数组。*args只能处理成列表
以下函数可以接受任何类型的参数