最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

Python基础学习代码之函数和函数式编程

来源:动视网 责编:小采 时间:2020-11-27 14:27:06
文档

Python基础学习代码之函数和函数式编程

Python基础学习代码之函数和函数式编程:def func1(): print 'hello world' res = func1() print type(res) def func2(): return ['xyz',10000,-98] atuple = func2() x,y,z = func2() print x,y,z def func3(): return 'xyz',1000,-98 x,y,z = func3() print x,y,z def fun
推荐度:
导读Python基础学习代码之函数和函数式编程:def func1(): print 'hello world' res = func1() print type(res) def func2(): return ['xyz',10000,-98] atuple = func2() x,y,z = func2() print x,y,z def func3(): return 'xyz',1000,-98 x,y,z = func3() print x,y,z def fun


def func1():
 print 'hello world'
res = func1()
print type(res)
def func2():
 return ['xyz',10000,-98]
atuple = func2()
x,y,z = func2()
print x,y,z
def func3():
 return 'xyz',1000,-98
x,y,z = func3()
print x,y,z
def func4():
 return ['xyz',1000,-98,'xxx']
x,y,z,d = func4()
alist = x,y,z,d
print alist
true = lambda :True
print true()
sum = lambda x,y:x + y
summ = lambda x,y=4:x + y
atuplet = lambda *zaz:zaz
print atuplet('a',1)
adictt = lambda **z:z
print adictt(x=3,y=5)
from random import randint
def functest(arg):
 return arg % 2
allnums = []
for eachnum in range(9):
 allnums.append(eachnum)
print filter(functest,allnums)
allnums = []
for eachnum in range(9):
# print eachnum
 ra = randint(1,99)
# print ra
 allnums.append(ra)
#print filter(lambda x:x%2,allnums)
#print [i for i in allnums if i%2]
print [n for n in [randint(1,99) for i in range(9)] if n%2]
print map(lambda x:x+2,[i for i in range(9)])
print map(lambda x:x**2,[int(i) for i in range(9)])
print map(str,[i for i in range(9)])
print map(lambda x,y:x+y,[1,2,3],[1,2,3])
print map(lambda x,y:(x+y,x-y),[1,2,3],[1,2,3])
print map(None,[1,2,3],[1,2,3])
print reduce(lambda x,y:x+y,[i for i in range(3)])
from operator import mul,add
from functools import partial
add1 = partial(add,1)
mul100 = partial(mul,100)
basetwo = partial(int,base=2)
basetwo.__doc__ = 'convert base 2 string to an int'
print basetwo('10010')
import Tkinter
root = Tkinter.Tk()
mybutton = partial(Tkinter.Button,root,fg='white',bg='blue')
b1 = mybutton(text='button1')
b2 = mybutton(text='button2')
qb = mybutton(text='quit',bg='red',command=root.quit)
b1.pack()
b2.pack()
qb.pack(fill=Tkinter.X,expand=True)
root.title('pfas!')
root.mainloop()
is_this_global = 'xyz'
def foo():
 global is_this_global
 this_is_local = 'abc'
 is_this_global = 'def'
 print this_is_local + is_this_global
def foor():
 m = 3
 def bar():
 n = 4
 print m + n
 print m
 bar()
def counter(start=0):
 count = [start]
 def incr():
 count[0] += 1
 return count[0]
 return incr
count = counter()
output = '<int %r id=%#0x val=%d>'
w = x = y = z = 1
def f1():
 x = y = z = 2
def f2():
 y = z = 3
 def f3():
 z = 4
 print output%('w',id(w),w)
 print output%('x',id(x),x)
 print output%('y',id(y),y)
 print output%('z',id(z),z)
 clo = f3.func_closure
 if clo:
 print 'f3 closure vars:',[str(c) for c in clo]
 else:
 print 'no f3 closure vars'
 f3()
 clo = f2.func_closure
 if clo:
 print 'f2 closure vars:',[str(c) for c in clo]
 else:
 print 'no f2 closure vars'
 f2()
 clo = f1.func_closure
 if clo:
 print 'f1 closure vars:',[str(c) for c in clo]
 else:
 print 'no f1 closure vars'
from time import time
def logged(when):
 def log(f,*args,**kargs):
 print '''called:
function:%s
args:%s
kargs:%s'''%(f,args,kargs)
 def pre_logged(f):
 def wrapper(*args,**kargs):
 log(f,*args,**kargs)
 return f(*args,**kargs)
 return wrapper
 def post_logged(f):
 def wrapper(*args,**kargs):
 now = time()
 try:
 return f(*args,**kargs)
 finally:
 log(f,*args,**kargs)
 print 'time delta:%s' % (time()-now)
 return wrapper
 try:
 return {'pre':pre_logged,'post':post_logged}[when]
 except KeyError,e:
 raise ValueError(e),"must be 'pre' or 'post'"
@logged('post')
def hello(name):
 print 'hello,',name
hello('world!')
x = 10
def ffoo():
 y = 5
 bar = lambda z:x+z
 print bar(y)
j,k = 1,2
def proc1():
 j,k = 3,4
 print 'j==%d and k==%d' % (j,k)
def proc2():
 j = 6
 proc1()
 print 'j==%d and k==%d' % (j,k)
k = 7
proc1()
print 'j==%d and k==%d' % (j,k)
j = 8
proc2()
print 'j==%d and k==%d' % (j,k)
def max2(arg1,arg2):
 if arg1 > arg2:
 return arg1
 elif arg1 == arg2:
 return 'equal'
 else:
 return arg2
max22 = lambda a,b:a if a > b else b
min22 = lambda a,b:a if a < b else b
def heji(a,b):
 return a+b,a*b
x,y = heji(3,4)
def mymin(a,b,*num):
 minnum = min22(a,b)
 for each in num:
 minnum = min22(minnum,each)
 return minnum
def mymax(a,b,*num):
 maxnum = max22(a,b)
 for each in num:
 maxnum = max22(maxnum,each)
 return maxnum
trantime = lambda m:(unicode(m / 60),unicode(m % 60))
print ':'.join(trantime(80))
a = ['jia','wo','ma']
b = ['get','hoa','?']
print map(None,a,b)
print zip(a,b)
def oddyear(y):
 if (y % 4 == 0 and y % 100 != 0) or y % 400 == 0:
 return y
print filter(oddyear,range(1999,2030))
print [y for y in range(1999,2030) if (y % 4 == 0 and y % 100 != 0) or y % 400 == 0]
print reduce(lambda x,y:x+y,range(6)) / float(6)
cl = lambda x:x.strip()
res = map(cl,open('e:\thefile.txt'))
import time
def timeit(arg):
 starttime = time.clock()
 result = arg
 endtime = time.clock()
 return (result,endtime-starttime)
def arg(a,b):
 return a * b
print timeit(arg(3,4))
mult = lambda x,y:x * y
print reduce(mult,range(9)[1:])

文档

Python基础学习代码之函数和函数式编程

Python基础学习代码之函数和函数式编程:def func1(): print 'hello world' res = func1() print type(res) def func2(): return ['xyz',10000,-98] atuple = func2() x,y,z = func2() print x,y,z def func3(): return 'xyz',1000,-98 x,y,z = func3() print x,y,z def fun
推荐度:
标签: 代码 函数 编程
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top