当前位置: 首页 > news >正文

python20 函数的定及调用

函数的定及调用
函数是将一段实现功能的完整代码,使用函数名称进行封装,通过函数名称进行调用。以此达到一次编写,多次调用的目的
用 def 关键字来声明 函数
格式:
def 函数名(参数列表):函数体[:return 返回值是可选的,可以没有]

代码

'''
函数的定及调用
函数是将一段实现功能的完整代码,使用函数名称进行封装,通过函数名称进行调用。以此达到一次编写,多次调用的目的
用 def 关键字来声明 函数
格式:
def 函数名(参数列表):函数体[:return 返回值是可选的,可以没有]
'''
# 声明 函数
def getSum(num):sum = 0for i in range(1,num+1):sum += iprint(f'1到{num}之间的累加和为:{sum}')return sum# 调用
sum1 = getSum(10)
print(f"sum1={sum1}")
getSum(100)
getSum(1000)# 参数可以设置默认值,有默认值的参数可以不传值。
# 带默认值的参数只能出现在参数列表的最后
def sayHello(name,sex,day=20):if sex == "男":print(f'{name}先生{day}日,早上好。')else:print(f'{name}女士{day}日,早上好。')sayHello('stevneChen','男',21)
# 关键这传参,可不不关心顺序,但参数名称要一至,具体如下
sayHello(sex='女',day=18,name='李四')
# 根据个人开发经验分享,我建义大家还是按参数顺序传参。
sayHello('李四',day=18,sex='女')# 默认值参数调用
sayHello('stevneChen2','男')# 可变参数
'''
可变参数又分为【个数可参的位置参数】和【个数可变的关键字参数】
【个数可变参的位置参数】 在参数前加 一颗星 *para
【个数可变的关键字参数】在参数前加 两颗星 **para'''# 【个数可变参的位置参数】 在参数前加 一颗星 *para
def fun(*paras):print(f'type={type(paras)}')for item in paras:print(item)
# 调用
fun(10,20,30,22)
# 解包传参
fun(*[1,2,3,4,5])# 【个数可变的关键字参数】在参数前加 两颗星 **para
def fun2(**kwparas):print(f'type={type(kwparas)}')for key,value in kwparas.items():print(f'fun2=>{key}--val=>{value}')fun2(name='cjh',age=18,sex="男")dictData = {'name':'cjh11','age':30,'sex':"男"}
# 解包传参
fun2(**dictData)def get_Sum(num):sum = 0 #累加和odd_sum = 0 #奇数和even_sum = 0 #偶数和for i in range(1,num+1):if i % 2 == 0:even_sum += ielse:odd_sum += isum += ireturn sum,odd_sum,even_sum #返回三个值# tuple 元组
result = get_Sum(10)
print(f'result type={type(result)}')
print(f'result = {result}')# 解包获取参数,解包赋值
a,b,c = get_Sum(10)
print(f'解包: a={a},b={b},c={c}')

http://www.lryc.cn/news/379150.html

相关文章:

  • 【Android WebView】WebView基础
  • Python酷库之旅-第三方库openpyxl(03)
  • 电脑丢失dll文件一键修复的方法有哪些?分析dll文件修复的多种策略
  • 小程序项目业务逻辑回忆4
  • LeetCode 16.最接近的三数之和(C++)
  • JSON.parse 解析NaN, Infinity, -Infinity失败
  • 【计算机】我不允许还有人不知道数据库是什么
  • 制作WIFI二维码,实现一键扫描连接WIFI
  • 数据结构-图的基本概念
  • 【HarmonyOS NEXT 】鸿蒙generateBarcode (码图生成)
  • python测试工程师 之 unittest框架总结
  • 微服务中的相关概念
  • 常见的设计模式
  • Camtasia2024中文版最新电脑录屏剪辑神器!
  • 【性能优化】表分区实践最佳案例
  • 力扣SQL50 项目员工 I ROUND AVG
  • nuscenes 数据集学习笔记
  • 在Windows上用MinGW编译OpenCV项目运行全流程
  • 用Vite基于Vue3+ts+DataV+ECharts开发数据可视化大屏,即能快速开发又能保证屏幕适配
  • 大二学生眼中的Netty?基于Netty实现内网穿透!
  • JavaStringBuffer与StringBuilder
  • 云徙科技助力竹叶青实现用户精细化运营,拉动全渠道销售额增长
  • 深度揭秘:深度学习框架下的神经网络架构进化
  • MySQL的DML语句
  • Wireshark的基本用法以及注意事项
  • 集团门户网站的设计
  • Tomcat基础详解
  • 【Python爬虫】爬取名人名言页面并进行简单的数据清洗(入门级)
  • Microsoft Visual C++ Redistributable 【安装包】【高速下载】
  • MFC绘制哆啦A梦