python基本函数

【 一 】python 函数

        python中可以将某些具备一定功能的代码写成一个函数,函数可以在一定程度上减少代码的冗余,节约书写代码的时间。

Python中定义好的函数是可以通过函数名称调取并重复使用的模块。

Python有内置函数,如print()函数;也支持创建自定义函数。

定义:

1 #定义一个函数
2 def func():                #使用def关键字定义函数 ,接函数名,括号内可以传递参数
3     print("hello world")    #函数体
4     return                  #返回值:函数在执行过程中只要遇到return语句,就会停止执行并返回结果,如果未在函数中指定return,那这个函数的返回值为None 
5   
6 #调用函数
7 func()

        Python中使用def关键字来声明函数,声明函数的格式为:

def 函数名 (参数):
   '函数的说明文档'
执行语句模块
   【return】+【 返回值】

有3个需要注意的地方:

  1. 函数名后面必须加冒号
  2. 如果函数体和def不在同一行,则必须缩进
  3. return指定函数返回值,用来结束函数
    • 但return语句是可有可无的,如果不给return,则等价于加上了return None,即函数默认返回None结构

        如果函数体body语句只有一行,或者可以简写为一行,则可以写在def的同行。例如:

def myfunc(x,y,z): print(x+y+z)

        函数声明好之后,就可以执行函数,执行函数也称为调用函数,方式为func_name(args),例如:

myfunc(1,2,3)

        函数中往往会包含一个return或多个return语句,它可以出现在函数中的任意位置处,它用来结束函数的执行,并返回给定的值。例如:

def func(x):
    return x+5

        表示返回x+5的值,返回值是一种值类型,所以可以赋值给变量、可以输出、可以操作等等。例如:

print(func(3))    # 输出返回值

a=func(4)         # 赋值给变量
print(a)

print(func(5)+3)  # 数值操作

        return语句是可选的,如果函数中不指定return语句,则默认返回None,即类似于return None

【 二 】定义函数

1.定义空函数

        Python 语言允许定义一个没有任何功能的空函数,可以使用 【pass 语句】作为占位符定义空函数,但空函数本身并没有实际意义。

def empty ():
   pass

2.定义单一变量函数

(1)定义函数

# 代码
# 函数1:不写【return】
def add (num):
   "函数名:add,参数为变量num,当调用add函数时,执行【a=num+1】和【print(a)】两个命令"
   a=num+1
   print(a)
# 代码
# 函数2:完整的单一变量函数
def add_1 (num):
   "函数名:add,参数为变量num,当调用add函数时,执行【a=num+1】和【print(a)】两个命令,最终输出函数结果num+1"
   a=num+1
   print(a)
   return num+1
# 代码
# 函数3:不写执行语句模块
def add_2 (num):
   "函数名:add,参数为变量num,当调用add函数时,最终输出函数结果num+1"
   return num+1

(2)查看函数说明文档

a.用help() 内置函数查看说明文档,格式【?】+【函数名】。

b.用【_doc_ 】属性查看函数查看说明文档。函数本身是一个对象,而每个对象都会有一个【_doc_ 】属性,该属性用于描述该对象的作用,格式【函数名】+【.】+【_doc_ 】。

# 代码
Greeting._doc_

#结果
"函数名:Greeting,参数为变量name,当调用Greeting函数时,执行输出'Hi,{},欢迎关注!'的命令"

(3)调用函数

格式【函数名】+【(参数)】。

# 代码
# 调用add函数:不写【return】
add(2)

# 结果
# 输出执行语句模块结果
3
# 代码
# 调用add_1函数:完整的单一变量函数
add_1(2)

# 结果
# 输出执行语句模块结果
3
# 显示函数最终结果,结果前提示符为out[num],表示结果没有print
3
# 代码
# 调用add_2函数:不写执行语句模块
add_(2)

# 结果
# 显示函数最终结果,结果前提示符为out[num],表示结果没有print
3

【  三 】 三种写法的函数区别

【返回值】(比喻为老板可以拿最终年报做后续工作)是函数最终的结果,可用于带入其他计算;

【执行语句模块】(比喻为老板不能拿工作过程做后续工作)是函数的运算过程,其中输出的结果不能与其他命令进行计算。

# add_1函数完整的单一变量函数,函数2最终结果为返回(输出)3,最终结果是整型,能参与后续加法运算

# 代码
# 输出(调用函数2,查看类型(调用函数2))
print(add_1(2),type(add_1(2)))

#1+调用函数2
1+add_1(2)

# 结果
3 # 输出执行语句命令
3 # 输出函数2最终结果
3 <class 'int'> #输出执行语句命令,再输出函数2最终结果的数据类型

#1+add_1(2)计算过程中,先调用函数2,输出执行语句命令,再用函数2最终结果与1进行加法计算输出运算结果


# add_2函数没有执行语句模块,但有return,且定义了返回值,函数3最终结果为返回(输出)3,最终结果是整型,能参与后续加法运算

# 代码
# 输出(调用函数3,查看类型(调用函数3))
print(add_2(2),type(add_2(2)))

#1+调用函数3
1+add_2(2)

# 结果
<class 'int'>

【  四 】关于函数参数

        函数的参数其实也是变量,只不过这些变量是独属于函数的本地变量,函数外部无法访问。在函数调用的时候,会将给定的值传递给函数的参数,这实际上是变量赋值的过程。

def myfunc(x,y,z):
    print(x,y,z)

myfunc(1,2,3)

        def首先声明好函数,然后到了myfunc(1,2,3)时,表示调用函数(执行函数),调用函数时会将给定的值1,2,3传递给函数的参数x,y,z,其实就是变量赋值x=1,y=2,z=3,然后使用print输出它们。

        由于python是动态语言,无需先声明变量,也无需指定变量的类型,所以python的函数参数和返回值非常的灵活。任何类型的变量或数据结构都可以传递给参数,这实际上是变量赋值的过程。例如:

myfunc(1,2,3)
myfunc("abc",2,"def")
myfunc([1,2,3],4,5)

        上面几个函数调用语句中,赋值给参数的值可以是数值类型,可以是字符串类型,可以是列表类型,也可以是其它任何数据类型。

        python函数的参数相比其它语言要复杂一些,意味着要灵活很多,短短一个小节的篇幅完全没法解释清楚,关于参数细节,详细内容见后面的文章

  • 4
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值