新闻动态

python基础之函数

发布日期:2021-12-21 09:50 | 文章来源:脚本之家

函数:

 # 什么是函数:一系列python语句的组合,可以在程序中运行一次或者多次
# 一般是完成具体的独立的功能
# 为什么要使用函数
# 代码的复用最大化以及最小化冗余代码,整体代码结构清晰,问题局部化
# 函数定义:
# def 函数名()
# 函数体【一系列的python语句,表示独立的功能】
# 函数的调用:
#本质上就是去执行函数定义里面的代码块。在调用函数之前,必须先定义
printInfo()  #函数的调用 函数名()#函数的调用

def printInfo(name,height,weight,hobby,pro):  ##加括号,固定语法规则
 print('%s的体重是%d' % (name, weight))
 # 函数代码块
 print('%s的身高是%f' %(name,height))
 print('%s的爱好是%s' % (name,hobby))
 print('%s的专业是%s' %(name,pro))  #封装完成
 pass
 # 调用带参数的信息
printInfo('小李',172,200,'打游戏','信息管理')
printInfo('小名',172,200,'打游戏','信息管理')
 

# 参数的分类:
# 必选参数、默认参数【缺省参数】、可选参数、关键字参数
# 参数:其实就是函数为了实现某项特定功能,进而为了得到实现功能所需要的数据
# 为了得到外部数据的
# 1 必选参数
def sum(a,b): # a,b形式参数:只是意义上的一种参数,在定义的时候是不占内存地址的
 sum=a+b
 print(sum)
 pass
# 函数调用
sum(20,15)  #20 15是实际参数,是实际占用内存地址的
sum()  #未传递参数,不可使用,不允许这样调用

 # 参数的分类:
# 必选参数、默认参数【缺省参数】、可选参数、关键字参数
# 参数:其实就是函数为了实现某项特定功能,进而为了得到实现功能所需要的数据
# 为了得到外部数据的
# 1 必选参数
def sum(a,b): # a,b形式参数:只是意义上的一种参数,在定义的时候是不占内存地址的
 sum=a+b
 print(sum)
 pass
# 函数调用
sum(20,15)  #20 15是实际参数,是实际占用内存地址的
sum()  #未传递参数,不可使用,不允许这样调用
 # 2:默认参数【缺省参数】
def sum1(a=20,b)
 print('')
 pass
# 默认参数调用
sum1(10) # 在调用的时候如果未赋值,就会用定义函数时给的默认值
sum1(2,56)


# 可变参数(当参数的个数不确定时使用,比较灵活)
def getComputer(*args):
 '''
  :param args:  #可变长参数类型
 :return:
 '''
 print(args)
 pass
getComputer(1)  ##当元组数据时直接加逗号
getComputer((1,2,3,4,5,6))
getComputer(1,2)

# 可变参数(当参数的个数不确定时使用,比较灵活)
def getComputer(*args):  #可变长的参数
 '''
  :param args:  #可变长参数类型
 :return:
 '''
 # print(args)
 result=0
 for item in args:
  result+=item
  print('result=%d'%result)
 pass
getComputer(1)  ##当元组数据时直接加逗号
getComputer(1,2)

# 关键字参数
# ** 来定义
# 在函数体内 参数关键字是一个字典类型 key是一个字符串
def keyFunc(**kwargs):
 print(kwargs)
 pass
# 调用
# keyFunc(1,2,3) #字典类型,此类型错误
dictA={'name':'leo','age':35}
# keyFunc(**dictA) #直接传递字典对象时,字典名前要加**
# keyFunc(name='peter',age=19)  #键值对方法传递
keyFunc()  #不传参数也可,直接为空

 # 组合的使用
def complexFunc(*args,**kwargs):  #参数混合使用
 print(args)
 print(kwargs)
 pass
complexFunc(1,2,3,4,name='刘德华')  #直接传送到第一个参数之中
# 参数可以都给,也可以都不给,也可以只给其一
complexFunc(name='贾玲')  #自动识别,自动填充

def TestMup(**kwargs,*args):  ##可选参数
 '''
 可选参数必须放到关键字可选参数之前
	可选参数:接受的数据是一个元组类型
关键字可选参数:接受的数据是一个字段类型
 :param kwargs: 
 :param args: 
 :return: 
 '''
 pass

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注本站的更多内容!

版权声明:本站文章来源标注为YINGSOO的内容版权均为本站所有,欢迎引用、转载,请保持原文完整并注明来源及原文链接。禁止复制或仿造本网站,禁止在非www.yingsoo.com所属的服务器上建立镜像,否则将依法追究法律责任。本站部分内容来源于网友推荐、互联网收集整理而来,仅供学习参考,不代表本站立场,如有内容涉嫌侵权,请联系alex-e#qq.com处理。

相关文章

实时开通

自选配置、实时开通

免备案

全球线路精选!

全天候客户服务

7x24全年不间断在线

专属顾问服务

1对1客户咨询顾问

在线
客服

在线客服:7*24小时在线

客服
热线

400-630-3752
7*24小时客服服务热线

关注
微信

关注官方微信
顶部