- "/"是除,得float;"//"是整除,得int.
- 方法是一个与某些对象有紧密联系的函数。调用方式:"对象.方法(参数)"
- 列表x。y=x[:]是将x复制给y; y=x是将y和x指向同一个列表。
- a%b。b一般用元组。如果使用其他序列代替元组,那么序列就会被解释为一个值。只有元组和字典可以格式化一个以上的值。
- 可迭代对象是指可以按次序迭代的对象(也就是用于for循环中的).
- 在序列中作切片时,返回的切片总是一个副本.
- ord函数将一个字符转换成ASCII整型; chr函数将整型转换成字符.
-
数据结构
-
容器(container)
-
序列(sequences)(共6种内建序列)
-
类型
- 列表(lists)*
- 列表方法
- append
- 在列表末尾追加新的对象.
- count
- 统计某个元素在列表中出现的次数.
- extend
- 在列表末尾一次性追加另一个序列中的多个值.
- index
- 找出某个值的一个匹配项的索引位置.
- insert
- 将对象插入到列表中.
- pop
- 移出列表中的一个元素(默认是最后一个); 栈.
- remove
- 移除列表中的某个值的第一个匹配项.
- reverse
- 将列表中的元素反向存放.
- sort
- 在原位置队列表进行排序.
- 元组(tuples)*
- 字符串
- 字符串方法
- find
- 在一个字符串中查找子字符串.
- join
- 在队列中添加元素.是split方法的逆方法.
- lower
- 返回字符串的小写字母版.
- replace
- 返回字符串的所有匹配项均被替换之后得到的字符串.
- split
- 将字符串分割成序列.是join的逆方法.
- strip
- 返回去除两侧(不包括内部)空格的字符串.
- translate
- 和replace方法一样,可以替换字符创中的某些部分,单只能处理单个字符.可以同时进行多个替换.
- maketrans创建用于转换的转换表.
- Unicode字符串
- buffer对象
- xrange对象
- 几乎所有情况下'列表'都可以代替'元组'
-
操作
- 索引(index)
- 分片(sliceing)
- 第一个索引是要提取的第一个元素的编号;第二个索引是提取之后剩下部分的第一个元素的编号。
- 加(adding)
- 两种相同类型的序列才能进行连接操作
- 乘(multiplying)
- 成员资格(用in运算符)
-
映射
-
字典
- 基础概念
- 字典是Python中唯一内建的映射类型
- 字典中的值没有特殊的顺序,但是都存储在一个特定的键(Key)里.键可以是数字、字符串甚至是元组.
- 字典键值对应,每对称作一项.
- dict={'A':'1','sdasdf':'ad23df','xvcah':'zxcv'}
- dict函数可以通过其他映射(比如其他字典)或者(键,值)这样的序列对或者关键字参数建立字典.
- dict函数
- 字典方法
- clear
- 清除所有项.
- copy
- 浅复制
- 浅复制是指当对象的字段值被复制时,字段引用的对象不会被复制.
- 深复制
- 是对对象事例中字段引用的对象也进行复制的一种方式.
- fromkeys
- 使用给定的键建立新的字典,每个键默认的值为None.
- get
- get是个更宽松的访问字典项的方法.当访问一个不存在的键时,可得到指定的值.
- items
- 将所有的字典项以列表方式返回.列表中每项以(键,值)格式出现.
- keys
- 将字典中的键以列表形式返回.
- pop
- 用来获得对应于给定键的值,然后将此项删除.
- popitem
- 弹出随机的项.因为字典没顺序.
- setdefault
- 类似get.获得与给定的键关联的值,当不含此键时设定相应的键值.
- update
- 给字典添加项,或给已有键更新值.update可以喝映射、拥有(键,值)对的队列(或者其他可迭代的对象)以及关键字参数一起调用。
- values
- 以列表的形式返回字典中的值.
- ..
- 集合(set)
- ..
-
语句
-
语句块
- 语句块是在条件为真时执行或者执行多次的一组语句.
- 用冒号(:)来标识语句块的开始,块中的每行都应该缩进同样的量.
- 当回退到和已经闭合的块一样的缩进量时,表示当前块已经结束了.
-
条件、循环和其他语句
-
布尔运算符
- and
- or
- not
-
a if b else c(条件表达式)
- 如果b为真,返回a,否则返回c.
- 布尔运算符通常被称为逻辑运算符.其行为成为短路逻辑或惰性求值.
-
assert(断言)语句
- 确保程序中的某个条件一定为真才能让程序正常工作.
-
for语句
- 迭代是循环的另一种说法.
-
range函数
- 内建的范围函数.
-
一些迭代工具(一些位于itertools中,一些内建)
- 并行迭代
- zip函数
- 把任意多个序列"压缩"在一起,然后返回一个元组的列表.当最短的序列"用完"时就会停止.
- 编号迭代
- enumerate(枚举)函数
- 在提供索引的地方迭代索引-值对.
- 翻转和排序迭代
- reversed函数
- sorted函数
-
list comprehension(列表推导式)
- 利用其它列表创建新列表.
-
抽象
-
创建函数
- 用def语句
-
记录函数
-
文档字符串
- 如果在函数的开头写下字符串,它就会作为函数的一部分进行存储,这称为"文档字符串".
-
help函数
- 可以在交互式解释其中使用内建的help函数,得到关于函数,包括它的文档字符串的信息.
-
作用域
- 如果局部变量或者参数的名字和想要访问的全局变量名相同的话,就不能直接访问了.全局变量会被局部变量屏蔽.
- 声明全局变量用global函数.
- 闭包
-
递归
- 递归的定义(包括递归函数的定义)包括它们自身定义内容的引用.
- 可以用递归的时候,在大多数情况下可以使用循环,而且大多数情况下还会更有效率. 但是递归可读性高.