@WillireamAngel
2018-05-01T14:42:58.000000Z
字数 1546
阅读 933
Python
培训内容:
1.lambda
2.循环for..in.. while;
continue结束单次循环和break结束整个循环跳出;
运算:0-->False和1-->True
3.
容器:元素组织在一起,容器中元素可逐个迭代获取,容器都可以被迭代(用在for,while等语句中),因此他们被称为可迭代对象。
list, deque, ….
set, frozensets, ….
dict, defaultdict, OrderedDict, Counter, ….
tuple, namedtuple, …
str
迭代器:可以返回一个迭代器的对象都可称之为可迭代对象。list是可迭代对象,dict是可迭代对象,set也是可迭代对象。
实现__iter__
(可迭代对象)和__next__()
(迭代器),__iter__
返回迭代器自身,__next__
返回容器中的下一个值。
itertools
生成器:yiled关键字,生成器一定是迭代器(反之不成立),函数返回生成器对象。
装饰器:'@函数名'语法糖
def w1(func):
def inner(*args,**kwargs):
# 验证1
# 验证2
# 验证3
return func(*args,**kwargs)
return inner
@w1
def f1(arg1,arg2,arg3):
print 'f1'
装饰器可以传入n个参数,一个函数可以由多个装饰器装饰,可以多层修饰的装饰器:
#!/usr/bin/env python
#coding:utf-8
def Before(request,kargs):
print 'before'
def After(request,kargs):
print 'after'
def Filter(before_func,after_func):
def outer(main_func):
def wrapper(request,kargs):
before_result = before_func(request,kargs)
if(before_result != None):
return before_result;
main_result = main_func(request,kargs)
if(main_result != None):
return main_result;
after_result = after_func(request,kargs)
if(after_result != None):
return after_result;
return wrapper
return outer
@Filter(Before, After)
def Index(request,kargs):
print 'index'
4.class类封装引用,list方法,list(::-1)
5.try...except...finally(关闭文件)或try...with... except
6.sort&sorted:
sorted(iterable[, cmp[, key[, reverse]]])
iterable -- 可迭代对象。
cmp -- 比较的函数,这个具有两个参数,参数的值都是从可迭代对象中取出,此函数必须遵守的规则为,大于则返回1,小于则返回-1,等于则返回0。
key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。