python语法笔记(五)】的更多相关文章

1.对象的属性     python一切皆对象,每个对象都可能有多个属性.python的属性有一套统一的管理方案. 属性的__dict__系统     对象的属性可能来自于其类定义,叫做类属性:还可能是该对象实例自身定义的属性,叫做对象属性.类属性可能来自类定义自身,也可能根据定义继承而来.     对象的属性存储在对象的__dict__属性中,__dict__是一个词典,键为属性名,值为属性本身.例如: class Bird(object): feather = True class Chic…
1.python内存管理 (1)对象内存使用 &nsbp;&nsbp;&nsbp;&nsbp;在python中通过执行内建函数 id(obj) 可以获得对象obj在内存中的地址.在python中,整数和短小的字符,python都会缓存这些对象,以便重复使用.当我们创建多个等于1的引用时,实际上是让所有这些引用指向同一个对象. a = 1 b = 1 print(id(a)) print(id(b)) python中,通过is关键字可以判断两个引用是否指向同一个对象,即 ob…
一:常见异常与错误 BaseException 所有异常的基类SystemExit 解释器请求退出KeyboardInterrupt 用户中断执行(通常是输入^C)Exception 常规错误的基类StopIteration 迭代器没有更多的值GeneratorExit 生成器(generator)发生异常来通知退出StandardError 所有的内建标准异常的基类ArithmeticError 所有数值计算错误的基类FloatingPointError 浮点计算错误OverflowError…
一.装饰器 装饰器,这个器就是函数的意思,连起来,就是装饰函数,装饰器本身也是一个函数,它的作用是用来给其他函数添加新功能,比如说,我以前写了很多代码,系统已经上线了,但是性能比较不好,现在想把程序里面每个函数都加一个功能,用来统计每个函数的运行时间是多少,找出来运行比较慢的函数,来优化代码,就需要添加一个新的功能,来统计程序的运行时间,那这样的话,就得修改每个函数了,需要改代码,但是代码特别多,改完了公司倒闭了,这时候装饰器就能排上用场了,它可以不改变原有的函数,原来的函数和原来一模一样,什么…
shevle 模块 扩展pickle模块... 1.潜在的陷进 >>> import shelve>>> s = shelve.open("nb") >>> s['x'] = ['a','b','c'] >>> s['x'].append('d') >>> s['x'] ['a', 'b', 'c'] 解析:当你在shelve对象中查找元素的时候,这个对象都会根据已经存储的版本进行重新构建,当你将…
1. 动态类型 python的变量不需要声明,在赋值时,变量可以赋值为任意的值.这和Python的动态类型语言相关. python对象是存在于内存中的实体,代码中写对象名,只是指向该对象的引用.引用和对象分离,是python动态类型的核心.引用可以随时指向一个新的对象: a = 3 a = 'at' #开始a指向对象3,a为对象3的一个引用 #执行 a = 'at',a指向了另一个对象,而原来的对象 3,如果没有任何一个变量指向它,则会被自动回收 a = 10 b = a a = a + 2 #…
1. 循环对象 循环对象是一类特殊的对象,它包含一个next()方法(在python3中是 __next__()方法),该方法的目的是进行到下一个结果,而在结束一系列结果之后,举出 StopIteration错误. 当一个循环结构(比如for)调用循环对象的时候,它就会每次循环的时候调用 next()方法,直到 StopIteration出现,for循环接收到 StopIteration,就知道循环结束,停止调用next().比如: f = open('1.txt') f.next() f.ne…
5.1 if语句 没什么好说,if语句语法如下: if expression: expr_true_suit 5.1.1多重条件表达式 单个if语句可以通过布尔操作符and,or,not实现多重条件判断或否定判断. if not warn and (system_load>=10): print 'WARNING:LOSING RESOURCE' warn+=1 5.2 else 语句 如果if条件为假程序将执行else后的语句. if expression: expr_true_suit el…
切片 Python提供了切片操作符,可以对list.tuple.字符串进行截取操作. list中的切片应用 语法如下: >>> L = ['Michael', 'Sarah', 'Tracy', 'Bob', 'Jack'] >>> L[0:3]#0为开始索引,3为结束索引,前闭后开 ['Michael', 'Sarah', 'Tracy'] >>> L[1:3] ['Sarah', 'Tracy'] >>> L[:3] #从零开始的…
一. 递归 递归函数: def a (): print ("from b") b() def b(): print("from a ") a() a() 递推和回溯 递归练习 二. 二分法 列表从小到大的数字列表,采用二分法. 三. 匿名函数 lambda n:n**2 自带return,适用于只有一行代码的函数体. 匿名函数调用:匿名函数就是个值.直接使用就行.不用为匿名函数绑定名称,匿名函数只能用一次,就会被回收. 匿名函数的应用场景:某个功能只用一次. 四. …