一:python的文件类型
源代码:python源代码的文件以“py”为扩展名,由python程序解释,不需要编译:
字节代码:python源文件经编译后生成的扩展名为“pyc”的文件
编译方法: import py_compile
py_compile.compile("hello.py")
优化代码:经过优化的源文件,扩展名为“.pyo”
优化方法:python -O -m py_compile hello.py
二:python变量
变量是计算机内存中的一块区域,变量可以存储规定范围内的值,而且值可以改变。
变量的命名
变量名有字母、数字、下划线组成。
数字不能开头
不可以使用关键字
变量的赋值
是变量声明和定义的过程
a=1
ld(a)
三:运算符与表达式
与:and 或:or 非:not
成员测试: in,not in 同一性测试:is,is not
按位或:| 按位异或:^ 按位与:&
四:python数据类型
数字 字符串 列表 元组 字典
数字类型:整型 int的范围-2147483648 到2147483647
五:序列
列表、元组和字符串都是序列
序列的两个主要特点是索引操作符和切片操作符
索引操作符让我们可以从序列中抓取一个特定项目。
切片操作符让我们能够获取序列的一个切片,即一部分序列
序列的基本操作
1.len():求序列长度
2.+:连接2个序列
3.*:重复序列元素
4.in:判断元素是否在序列中
5:man():返回最大值
6:min():返回最小值
7:cmp(tuple1,tuple2)比较2个序列值是否相同
单引号可以区分字符串和变量
六:元组
元组和列表十分类似,只不过元组和字符串一样是不可变的即你不能修改元组。
元组通过圆括号中用逗号分割的项目定义;
元组通常用在使语句或用户自定义的函数能够安全地采用一组值的时候,即被使用的元组的值不会改变。
一个空的元组由一对空的圆括号组成 ;如myempty=()
含有单个元素的元组;如singleton=(2,)
一般的元组;如zoo=('wolf','elephant')
元组和字符串类型一样属于序列类型,可通过索引和切片操作;
元组值也不可改变
七:列表[]
根据元素对应的索引和切片可以取到列表相对应的值;
list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。
列表是可变类型的数据
列表的组成:用[]表示列表,包含了多个以逗号分隔开的数字,或者字串。
如:list1=['simon','david','clotho','张三‘]
list2=[1,2,3,4,5]
八:列表操作
取值,切片和索引 list[]
添加 list.append()
删除 del(list[])或者是list.remove(list[])
修改 list[]=x
查找 var in list[]
九:字典
元组() 列表[] 字典{}
字典是python中唯一的映射类型(哈希表);字典对象是可变的,但是字典的键必须使用不可变对象,并且一个字典中可以使用不同类型的键值。
keys() 或者values()返回键列表或者值列表
items()返回包含键值对的元组
创建字典--{}
使用工厂方法dict()
例如:fdict=dict(['x',1],['y',2])
内建方法:fromkeys(),字典中的元素具有相同的值,默认为None
例如:ddict={}.fromkeys(('x','y'),-1)
更新和删除
直接用键值访问更新;内建的update()方法可以将整个字典内容拷贝到另一个字典中
del dict1['a'] 删除字典中键值为a的元素
dict1.pop('a')删除并且返回键为‘a'的元素
dict1.clear()删除字典所有元素
del dict1删除整个字典
字典相关的内建函数:
type(),str(),cmp() (cmp很少用于字典的比较,比较依次是字典的大、小、键、值)
工厂函数dict():
例如:dict(zip('x','y'),(1,2))或者dict(x=1,y=2)
生成{’y':2,'x':1}
使用字典生成字典比用copy慢,因此这种情况下推荐使用copy()。
len(),hash()(用于判断某个对象是否可以做一个字典的键,非哈希类型报TypeError错误)
dict.clear()删除字典中的所有元素
dict.fromkeys(seq,val=None):以seq中的元素为键创建并返回一个字典,val为制定的默认值。
dict.get(key.default=None):返回key的value,如果该键不存在返回default指定的值
dict.has_key(key):判断字典中是否存在key,建议使用in或者not in 代替
dict.items():返回键值对元组的列表
dict.keys():返回字典中键的列表
dict.iter*():iteritems(),iterkeys(),itervalues()返回迭代子而不是列表;
dict.pop(key[,default]):同get(),区别是若key存在,删除并返回dict[key],若不存在切default未指定值,抛出KeyError异常
dict.setdefault(key,default=None):同set(),若key存在则返回其value,若key不存在,则dict[key]=default
dict.update(dict2):将dict2中的键值添加到字典dict中,如果有重复覆盖,原字典不存在的条目添加进;
dict.values():返回字典中所有值的列表。
阅读(1101) | 评论(0) | 转发(0) |