从0开始的Python学习007函数&函数柯里化
2024-10-18 03:51:39
简介
函数是可以重用的程序段。首先这段代码有一个名字,然后你可以在你的程序的任何地方使用这个名称来调用这个程序段。这个就是函数调用,在之前的学习中我们已经使用了很多的内置函数像type()、range()。
通过关键字def定义函数
def 函数名(【参数】):
代码块
一个简单的函数
def sayHello():
print('Hello world!') sayHello()
运行结果
函数参数
函数中的参数名称为形参,提供给函数调用的值称为实参。
参数在函数定义的圆括号中指定,使用“,”逗号分隔。
def printMax(a,b):
if a>b:
print(a,'is maximum')
else:
print(b,'is maximum') x = int(input('The first number:'))
y = int(input('The second number:')) #通过接收参数进行接收
printMax(x,y) #直接传值
printMax(3,5) m = 7
n = 20 #定义变量进行传递
printMax(m,n)
运行结果
拓展
函数的柯里化
在计算机科学中,柯里化(Currying)是把接受多个参数的函数变换成接受一个单一参数(最初函数的第一个参数)的函数,并且返回接受余下的参数且返回结果的新函数的技术。这个技术由 Christopher Strachey 以逻辑学家 Haskell Curry 命名的,尽管它是 Moses Schnfinkel 和 Gottlob Frege 发明的。(来自百度百科)
Python中的函数柯里化
#函数的柯里化
#引用模块很快就会学习到了使用functools 中的partial函数进行柯里化
from functools import partial
def foo(a,b,c):
return a+b+c
#将函数重新定义固定参数生成一个新的参数
foo2 = partial(foo,b=2)
print(foo2(a=1,c=2))
运行结果
最新文章
- c#中抽象类(abstract)和接口(interface)的相同点与区别
- Python 字符串
- [nosql之缓存memcache]安装篇LInux for Windows
- awk 的一些用法
- php大力力 [040节] 买了一天域名,整了一天后台,新网后台不懂啊
- Powerdesigner 导出Excel格式数据字典 导出Excel格式文件
- mysql:学习学习~
- CSS sprites 技术
- Burp Suite Walkthrough
- button 垂直分布
- GIMP也疯狂之动态图的制作(四)
- 计算数据库中30天以内,30-60天,60-90天,90天以外的数据的个数(用sql实现)
- shell流程控制--循环语句
- [翻译] .NET Core 2.1 发布
- PHP+ffmpeg+nginx的配置实现视频转码
- SVN &;&; BeyondCompare
- Android 源码编译 指定userdata.img、system.img、cache.img容量大小【转】
- bzoj千题计划218:bzoj2333: [SCOI2011]棘手的操作
- java后台接收json数据,报错com.alibaba.fastjson.JSONObject cannot be cast to xxx
- render:h =>; h(App) 是什么意思?
热门文章
- [Swift]LeetCode954. 二倍数对数组 | Array of Doubled Pairs
- [Swift]LeetCode1014. 最佳观光组合 | Best Sightseeing Pair
- RSA算法原理——(3)RSA加解密过程及公式论证
- 【机器学习】--线性回归中L1正则和L2正则
- 网络协议 11 - Socket 编程(下):眼见为实耳听为虚
- JVM基础系列第3讲:到底什么是虚拟机?
- 跳槽 &; 思维导图
- ThreadPoolExecutor线程池任务执行失败的时候会怎样
- java基础(三)-----java的三大特性之多态
- 我和Session的不解之“缘”(故事型技术长文)