1.max()、min()返回容器中最大最小值,但如果参数是字典,只对字典中键值大小比较。字典与字典不能直接比较大小,字典无序。
2.字典不可以用乘法号*重复,因为字典的键值是唯一的。
3.可变与不可变数据类型:
a.不可变类型:内存中数据不允许被修改
数字类型:int ,float, bool, complex, long(z,x)
字符串:str
元组:tuple
b.可变类型
列表:list
字典:dict
4.整数、元组、字符串都可以作为字典键值对的key.可变数据类型不可以:如 列表、字典。
5.哈希(hash):
python中hash()函数只能接收不可变数据类型。返回结果是一个整数。hash是一种算法,作用是提取数据的特征码(指纹)。
6.局部变量和全局变量
定义在函数内部的变量,只能在函数内部使用。函数执行后,局部变量被系统收回。不同函数内部可以定义相同名字的局部变量,彼此之间互不影响。
全局变量在所有函数内部都可以使用。其他语言开发中不推荐使用全局变量,不好维护。函数内部不允许直接修改全局变量的值。如果使用赋值语句,只会在函数内部定义一个局部变量。如果希望修改全局变量-使用global 声明一下即可。在开发中,应该把所有全局变量定义在所有函数上方,可以保证所有函数访问到全局变量。
7.代码结构示意图 Python
#! shebang
import 模块
全局变量
def 函数定义
执行代码
8.return 如果函数返回的数据类型是元组,小括号可以省略。可以使用多个变量一次接收函数的返回结果。
9.交换两个数字(面试题):多个变量接收元组的值,小括号可以省略。a, b = b, a
10.函数的参数:
对于可变和不可变数据类型,在函数内部,针对参数使用赋值语句,都不会修改到外部的实参变量。如果在函数内部使用方法如.append()修改可变数据类型(列表。字典)参数,会影响外部实参。
11.在Python中,列表变量调用 += 本质上是在执行列表变量的extend方法,不会修改变量的引用。
12.缺省参数:具有默认值的参数叫缺省参数。在函数参数中指定缺省参数的默认值,指定位置在参数的末尾。
def print_info(name, title, gender = True):
13.多值参数:一个函数能处理的参数个数是不确定的,这时使用多值参数。
参数名前增加一个* ,可以接收元组。
参数名之前增加两个*,可以接收字典。
一般习惯使用以下两个名字:
*args--存放元组参数。arguments的缩写。
**kwargs--存放字典参数。keyword的缩写,kwargs可以记忆键值对参数。
14.元组和字典的拆包:
在调用带有多值参数的函数时,如果希望:
·将一个元组变量,直接传递给args;
·将一个字典变量,直接传递给kwargs
就可以使用拆包,在元组变量前加一个*;在字典变量前加两个**。