字典是散列表 稀疏数组总有空白元素
数组每个单元就是一个bucket:2个部分 键对象引用和值对象引用
字典是散列表 稀疏数组总有空白元素
数组每个单元就是一个bucket:2个部分 键对象引用和值对象引用
字典元素的增加
键已经存在,覆盖旧的,不存在就增新的
直接添加a['address']='haidian'
2、updata()直接将新字典中的所有键值对全部添加到旧字典对象上 a.update(b)
3、元素删除 del(a[name])
pop()删除指定键值对 b=pop()
字典:包含键和值
可以直接访问键获取值 a['name']
可以通过get获得
a,get('name')
获取所有键值对 a.items()
列出所有的键 a.keys()
列出所有的值 a.values()
键值对的个数 len()
检测一个键是否在字典中 "name" in a
1、a={'name':'gaoqi','age','18'}
a['name']=gaoqi
键不可可变 不可重复
2、a=dict(name='gaoqi',age='18')
a=dict([("name","gaoqi"),("age","18")])
3、zip()
k=['name','age']
v=['gaoqi','18']
d=dict(zip(k,v))
a=[
["高小一",18,3000,“北京”]
["高小二",18,3000,“上海”]
]
a.sort()
id(a)
import random
a.random.shuffle
max(a)
min(a)
sum(a)
a=[10,20,30,40,50,60]
a[1:3:1]
>>>[20,30]
a[1::2]
>>>[20,40,60]
a[1:]
>>>[20,30,40,50,60]
a[:2]
>>>[10,20]
包头不包尾
a[::-1]
>>>[60,50,40,30,20,10]
id(a)
a.extend([100,200])
左移<<乘以2
右移>>除以2
运算优先级:位运算和算术运算>比较运算符>赋值运算符>逻辑运算符
a,b=10,20
a,b=b,a
为什么python可以实现变量互换?
traceback模块
异常写入日志文件
with上下文管理
with context_expr[as var];
语句块
自动管理资源,适用于文件操作。网络通信
SyntaxeError:语法错误
n4NamerError:尝试访问一个没有声明的变量
ZeroDivisionError:除数为0
ValueError:数值错误
TypeError:类型错误
AttributeError:访问对象不存在的属性
IndexError:索引越界
KeyError:字典的关键字不存在
finally无论是否发生异常都会执行,通常用来释放try块中申请的资源。
递归函数
eval()函数
将字符串当成有效的表达式来求值并返回计算结果
lambda表达式 声明匿名函数
实际生成了一个函数对象
只允许包含一个表达式,不能包含复杂语句
参数的几种类型
位置参数 需要个数和形参匹配
默认值参数,放在
命名参数
F1调帮助文档
quit()、ctrl+Z+回车关闭交互窗口
ctrl+C中段程序执行
ctrl s 保存
F5 run
‘’‘
中间可加多行注释
‘’’
\行连接符:觉得太长,可以\后换行
变量名字母、下划线可开头,后面可跟数字、字母、下划线
类名首字母大写
删除变量:del 变量
quit()、ctrl+Z+回车关闭交互窗口
ctrl+C中段程序执行