实现一个功能,最好的方式就是把代码组织成一个函数,这样以后再调用起来更方便。函数函数是一段有组织的、可重用的代码,用于实现单个或相关函数。定义函数您可以定义一个具有所需功能的函数,以下是简单的规则:函数代码块以def关键字开头,后面是函数标识符名称和圆括号()。任何传入的参数和参数都必须括在括号中。参数可以在括号之间定义。函数的第一条语句可以选择使用文档字符串——用于存储函数描述。函数内容以冒号开头并缩进。return[expression]终止函数,可选地向调用者返回一个值。不带表达式的return等同于返回None。deffunctionname(parameters):"""Function_documentstring"""function_suitereturn[expression]高阶函数高阶函数有两个特点:变量可以指向函数函数名和变量可以作为变量传递变量指向函数#abs是求绝对值的函数f=abs#将abs函数指向变量fprint(type(f))#打印变量f的类型print(f(-100))#调用f函数运行结果:100函数名也是一个变量print(type(abs))#打印abs的类型print(abs(-100))#求-100的绝对值abs=10#赋值一个valuetothevariableabsprint(type(abs))#打印abs的类型print(abs(-100))#尝试再次调用abs求-100的绝对值Runningresult:100#这里报错了,因为abs改了,没有了,然后才有求绝对值的功能。回溯(最近调用最后):文件“D:/WorkSpace/Study/pythonTest/dataType.py”,第5行,在print(abs(-100))TypeError:'int'objectisnotcallableaspassed输入函数use#在这里定义一个函数,传入变量xy和函数f,然后返回f函数处理后的xy之和defaddAllAbs(x,y,f):returnf(x)+f(y)#这里使用abs函数作为传入函数,使用print(addAllAbs(-1,-50,abs))运行结果:51map,reduce,filter,sorted。..这些函数都是高阶函数。map(f,x)map依次对序列的每个元素应用传入函数,并将结果作为一个新的迭代器返回#将列表的首字母改为大写,其余为小写deffirstCap(x):returnx.capitalize()print(list(map(firstCap,['adam','LISA','barT'])))运行结果:['Adam','Lisa','Bart']reduce函数必须接收两个A参数,与序列的下一个元素继续累加结果fromfunctoolsimportreduce#使用reduce拼接整数列表defsplice(x,y):returnx*10+yprint(reduce(splice,[1,2,3,4,5,6]))运行结果:123456filterfilter()依次对每个元素应用传入函数,然后根据返回值是True还是判断保留还是丢弃该元素错误的。#返回列表中的偶数defis_odd(x):returnx%2==0print(list(filter(is_odd,[1,2,3,4,5,6,7,8,9])))sortedsorted()函数也是一个高阶函数,它还可以接收一个key函数实现自定义排序print(sorted([36,5,-12,9,-21],key=abs))运行结果:[5,9,-12,-21,36]Anonymousfunctionlambdax:x*x关键字lambda表示匿名函数,冒号前的x表示函数参数。#这里lambdan:n%2==1其实就是判断n是否为奇数#这里打印的是返回list中的奇数print(list(filter(lambdan:n%2==1,range(1,20))))运行结果:[1,3,5,7,9,11,13,15,17,19]先写这么多。..