Python--Demo8--函数定义和函数调用,,我们已经使用了一些p
Python--Demo8--函数定义和函数调用,,我们已经使用了一些p
我们已经使用了一些python内建函数,比如print()、input()、str()等等。
也使用了一些python自带模块的一些库函数,比如math模块的abs()函数。
现在我们来学习一下如何自定义一个函数?
函数定义:
语法:def关键字、函数名、([参数])、冒号、下一行缩进代码块(使用return 值 作为函数返回值)。
函数调用:函数名([参数])
示例:自定义一个函数,要求传入一个任意数值,返回传入参数的绝对值。
>>> def my_abs(invalue):... if invalue<0:... invalue=-invalue... return invalue...>>> my_abs(-1)1>>> my_abs(2)2>>> my_abs(-0)0>>> my_abs(0)0
说明:my_abs()是一个带参数、带返回值的函数
示例:自定义一个无参数、不带return的函数。
>>> def my_function():... print(‘你好python...‘)...>>> rtn=my_function()你好python...>>> print(rtn)None>>> type(rtn)<class ‘NoneType‘>
说明:my_function()执行后,输出返回值为None?这是因为如果我们没有写return语句,python会为我们自动在函数末尾追加一个return None。
示例:定义函数 return后面跟多个以逗号隔开的值
>>> def change_value(p1,p2):... tmp=p1... p1=p2... p2=tmp... return p1,p2...>>> change_value(11,90)(90, 11)>>> value1,value2=change_value(7,121)>>> value1121>>> value27
说明:return 后面跟多个值,以逗号隔开,貌似我们最终能够得到多个值,其实不然,我们得到的是一个元组。从上面的执行结果就可以看出。
示例:定义一个空函数,需要用到pass关键字。
>>> def dono():... pass...>>> dono()>>> rtn=dono()>>> print(rtn)None
说明:我们定义这个函数之初,并没有想好这个函数要干什么,那么函数体内可以什么都不写,只写一个pass关键字就行了。
pass关键字:pass其实很有用 当我们在任何时候不知道下一步要做什么都可以先用pass使我们的程序不报错。
示例:
>>> age=18>>> if age>=18:... pass... else:... print(‘未满18可别抽烟‘)...>>> if age>=18:... File "<stdin>", line 2 ^IndentationError: expected an indented block
说明:上面的例子可以看出,在满足age>=18后 如果我们不使用pass关键字,那么程序就会报错。
Python--Demo8--函数定义和函数调用
评论关闭