码迷,mamicode.com
首页 > 编程语言 > 详细

Python学习之==>函数

时间:2018-05-19 01:18:50      阅读:187      评论:0      收藏:0      [点我收藏+]

标签:home   style   python   rgs   enter   结果   作用   txt   pen   

一、函数是什么:

  函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需要调用函数名就行。

二、函数的作用:

  1、简化代码

  2、提高代码的复用性

  3、代码可扩展

三、定义函数:

1 def SayHello():   #函数名
2     print(Hello)#函数体
3 SayHello()        #调用函数,函数不调用是不会被执行的

 

四、函数的参数

位置参数:必填参数

1 def calc(a,b): #形参,形式参数
2     res = a * b
3     print(%s * %s = %s%(a,b,res))
4 calc(8.9,2.7)  #实参,实际参数

默认值参数:非必填参数

 1 # 操作文件函数(读和写)
 2 def op_file(file_name,conent=None): #conent为写的内容
 3     f = open(file_name,a+,encoding=utf-8)
 4     f.seek(0)
 5     if conent:  #conent不为空代表写入文件
 6         f.write(conent)
 7         f.flush()
 8     else:      #conent为空时读文件
 9         all_users = f.read() #函数里面定义的局部变量只能在函数里面用
10         return all_users     #调用完函数之后,返回什么结果
11     f.close()
12 # 把函数返回的结果存入变量
13 res = op_file(a.txt)
14 print(res)

 非固定参数(参数组):

  1、非必填参数

  2、不限定参数个数

  3、把所有参数放到一个元组里面

 1 def syz(*args): #参数组
 2     print(args)
 3     username = args[0]
 4     pwd = args[1]
 5     age = args[2]
 6 syz()
 7 syz(niuniu,123)
 8 syz(niuniu,niuniu,test)
 9 def syz2(a,*args):
10     print(a)
11     username = args[0]
12     pwd = args[1]
13     age = args[2]
14 syz2()
15 syz2(niuniu,123)
16 syz2(niuniu,niuniu,test)

 关键字参数:

  1、非必填参数

  2、不限定参数个数

  3、把所有参数放到一个字典里面

 1 def syz(**kwargs):
 2     print(kwargs)
 3 syz()
 4 syz(name=niuniu,age=23)
 5 syz(name=niuniu,age=23,add=回龙观,home=河南)
 6 def syz2(time,**kwargs):
 7     print(kwargs)
 8 syz2(20180418)
 9 syz2(name = niuniu,age = 23,time = 20180418)
10 syz2(20180418,name = niuniu,age = 23,add = 回龙观,home = 河南)

 

五、全局变量

    1、不安全,所有人都能改

    2、全局变量会一直占用内存

1 name = 牛牛  #全局变量
2 def sayName():
3     global name  #如果需要修改全局变量,需要先声明
4     name = 刘伟#局部变量
5     print(name1:,name)
6 sayName()
7 print(name2:,name)

 

六、递归函数:函数自己调用自己

  1、少用递归

  2、递归最多调用999次,效率不高

1 def test():
2     num = int(input(please enter a number:))
3     if num % 2 == 0:#判断输入的数字是不是偶数
4        return True  #如果是偶数的话,程序就退出了,返回True
5     print(不是偶数请重新输入!)
6     return test()   #如果不是偶数的话继续调用自己,输入值
7 print(test())       #调用函数

 

七、函数返回多个值

 1 # 定义一个函数返回多个值
 2 def say():
 3     num1 = 1
 4     num2 = 2
 5     num3 = 3
 6     return num1,num2,num3
 7 # 函数返回多个值会把它放到一个元组里面
 8 print(say())
 9 # 函数如果返回多个值,可以用多个变量来接收
10 res1,res2,res3 = say()
11 print(res1)
12 print(res2)
13 print(res3)

 

Python学习之==>函数

标签:home   style   python   rgs   enter   结果   作用   txt   pen   

原文地址:https://www.cnblogs.com/L-Test/p/9053915.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!