小生博客:http://xsboke.blog.51cto.com
-------谢谢您的参考,如有疑问,欢迎交流
一、 元组(tuple)
1. 元组的特点
元组是固定的,不能修改也不能增减、因为元组不可变,所以更安全,如果可以,尽量不使用list而使用tuple
2. 格式
3. 可用参数
4. 元组的结构(以元组a为例)
当创建一个元组a时,将在内存中开辟一个名为a的内存,然后每个索引位置为一个命名空间,每个命名空间都有一个存储,而真实的数据就存在这个存储中,元组的不可变性,就是这个索引(命名空间)不可变
二、 字典(dictionary)
1. 字典的特点
Python内置字典,英文:dictionary也叫,map
字典使用键-值(key-value)这种格式进行存储
字典为无序,查询的时候将通过key的hash查找值
2. 定义字典
3. 字典方法(以字典a为例)
三、 深浅复制
首先我们看一下字典,元祖、序列的结构
例:下面举个例子,可以让你更清晰的看懂这张图
明明list中有7个数字,为什么统计元素的时候只有5个元素呢?
那是因为这个序列一共有2层数据,而使用len统计元素时,只统计第一层的元素个数
1. 通过举例论证浅拷贝
2. 通过举例论证深拷贝
二、 函数
1. 定义函数(多个参数用逗号分隔)
2. 输出函数(多个参数用逗号分隔)
3. 调用函数(多个参数用逗号分隔)
4. 定义一个空函数
5. Return在函数中的作用
停止当前语句,并将指定值赋予给调用函数的变量名
例:
没有return时
有return时
6. 星号:“*”,在函数中的应用
如果形式参数中同时存在可变参数和关键字参数,那么,可变参数必须在关键字参数前面,否则会提示语法错误
1) 可变参数
2)关键字参数
7. 默认值
当形式参数没有默认值时,输入的实际参数数量和形式参数必须相同。
定义形式参数中默认值时,带有默认值的形式参数,不能定义在没有默认值的形式参数前面
8. 其他使用方法
实际参数默认与形式参数的顺序相同,如果想实际参数的输入顺序与形式参数的顺序不同,则在定义实际参数时,需要指定这个实际参数是属于哪个形式参数的
如果想在实际参数中使用已经定义好的元组,则需要在序列名前加一个星号“*”,如果是字典则需要加两个星号“**”。
9. 递归函数
定义一个函数,如果判断输入的实际参数等于1则直接输出;
如果不等于1,则使用输入的实际参数乘以实际的参数减一,直到实际参数等于一为止。
此例的计算过程如下: