python基础教程学习笔记

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/magic_wz/article/details/37596745

第一章

幂 **  或者pow(2,3)   

  1. abs 绝对值
  2. round 四舍五入
  3. floor
  4. ceil
  5. sqrl 开根号

加 #!/usr/bin/env python

  • input python表达式
  • raw_input 原始数据
  1. repr  转python表达式
  2. ``  转python表达式
  3. str 转字符串
  • 长字符串 ''' '''
  • 原始字符串 r' '
  • unicode: u' '   3.0以下字符串用的8位ASCII 码,可转为16位unicode字符串

第二三四章

序列包含:
  1. 列表
  2. 元组
  3. 字符串
  4. unicode
  5. buffer
  6. xrange
序列的操作包含:
  1. 索引
  2. 分片 步长[0:10:2]
  3. 加(相同类型)
  4. in 
  5. len
  6. min
  7. max
列表:
操作有:
  1. 赋值
  2. 删除
  3. 分片赋值 n[1:1]=[2,3,4]
方法有:
  1. append
  2. count
  3. extend 注意和用+的区别
  4. index
  5. insert 需要两个参数如(3,"ok")
  6. pop 唯一一个既修改列表又返回元素值
  7. remove 移除第一个匹配的项,注意与pop的区别
  8. reverse
  9. sort 注意,例如y=x.sort() x返回 None ,可以y=x[:]复制列表。需要返回的话用函数sorted(x)
  10. sort(cmp key reverse)高级排序
元组
tuple 值不可修改,不可变序列。操作与list类似

字符串
不能修改,例如str[1:]="abc"会报错
方法:
  1. find 
  2. join 
  3. lower 
  4. replace 
  5. splite
  6. strip
  7. translate
字典
注意两点:
  1. 键可以是任何不可变类型
  2. 空字典键可直接使用
方法:
  1. clear 
  2. copy y=x.copy()
  3. fromkeys  dict.fromkeys([xx])
  4. get
  5. has_key
  6. item 
  7. iteritems
  8. keys
  9. iterkeys
  10. pop
  11. popitem
  12. setdefault
  13. update
  14. values
  15. itervalues

第五章

  1. is : 同一性
  2. == :相等性
  • range
  • xrange
迭代工具
  1. zip : 并行迭代
  2. enumerate: for index,string in enumerate(strings)
两个函数
  • sorted
  • reversed
列表推导式:[x*x for x in range(10)]

第六章

函数
  1. callable
  2. hasattr(func,__call__)
文档字符串
''
__doc__

形参转实参
(形)n = name(实) ,如此传值,因此 字符串 数字 元组不可变的,不会改变实参的值
而列表这种可变的就可能会改变实参的值。若不想改变列表值,可如此传change(name[:])

关键字参数可提供默认值
收集参数:
  1. * 收集位置参数
  2. ** 收集关键字参数
  • vars() globals() 全局变量
  • locals() 局部变量
lambda

第七章第九章 类

多态:不同的类的对象使用相同的操作。如count 任何类可用;repr 对任何东西使用。都属于多态的范畴。
类相关
  • 类属性(类作用域内变量)
    1. 可被类访问
    2. 可被所有实例访问
    3. 可被屏蔽
    4. 类似JAVA静态变量(可能)
  • 实例属性(变量) self.XX
方法:
  1. 类方法 (cls) @classmethod 可用cls调用类的私有类变量 
  2. 静态方法 (无self参数)  @staticmethod  装饰器原理: smeth=staticmethod(smeth)
  3. 实例方法 (self) 这里要注意通过(self)参数来与函数区分。
名字前加__双下划线可以使方法或者特性变为私有。
关于超类
子类可以重写父类方法
issubclass查是否子类
多个超类:先继承的重写后继承的。
相关函数:
  1. issubclass
  2. isinstance
  3. type(s)
相关属性
  1. __bases__
  2. __class__
接口内省
  1. hasattr
  2. setattr
  3. __dict__
关于构造方法
__init__  子类重写构造方法,应调用父类的,否则运行时可能出问题
(例如某些特性是父类构造方法中定义的,self.attr的实例属性,将不被继承,这时候直接用会出错)
 super(SongBird,self).__init__() 3.0中super不用加参数
或者Bird.__init__(self)

property的使用,未仔细看

猜你喜欢

转载自blog.csdn.net/magic_wz/article/details/37596745