首页 > 编程语言 >二十六、Python基础语法(函数进阶-下)

二十六、Python基础语法(函数进阶-下)

时间:2024-11-01 22:18:23浏览次数:6  
标签:二十六 进阶 Python list test 参数 print my 函数

一、多值参数

多值参数(可变参数、不定长参数):有的函数不确定参数有几个,在一个普通的参数前面加上一个*,这个参数就变为不定参数。可以接收任意多个位置传参的数据,类型为元组。

def test(name, *args, sex='男'):
    print(name, args, sex)


# 传递3个参数
test('张三', 25, sex='女')  # 张三 (25,) 女
# 缺省参数要带上关键字
test('张三', 25, '女')  # 张三 (25, '女') 男
# 传递七个参数
test('张三', 25, 178, 'IT', 'QA', sex='女')  # 张三 (25, 178, 'IT', 'QA') 女
# 多值参数也可以不传递
test('张三')  # 张三 () 男

需求:使用函数对[6,7,8]列表和(2,3,4)元组中的数据进行求和。

my_list = [6, 7, 8]
my_tuple = (2, 3, 4)


def my_add(*n):
    s = 0
    for i in n:
        s += i
    return s


# 手动分解参数
print(my_add(my_list[0], my_list[1], my_list[2]))  # 21
# 自动拆包
print(my_add(*my_list))  # 21
print(my_add(*my_tuple))  # 9

二、函数返回多个数据

函数中返回数据使用的return关键字,除了返回数据值,还可以结束函数的运行,如果想要返回多个数据值,只需要将多个数据值变成容器(一般是元组)返回即可,也可以通过多个变量分别接受多个返回值。

def test(x, y):
    z1 = x + y
    z2 = x - y
    return z1, z2


result = test(3, 1)
print(result)  # (4, 2)
a, b = test(4, 2)
print(a, b)  # 6 2

三、匿名函数

匿名函数:使用 lambda 关键字定义的函数,匿名函数只能实现简单的功能,只能写一行代码,可以作为函数的参数使用,也可以使用 def 定义的函数作为函数的参数。

需求:对列表中的字典排序

user_list = [
    {'name': 'Tom', 'height': 190, 'title': 'TE'},
    {'name': 'Ali', 'height': 178, 'title': 'IE'},
    {'name': 'Kent', 'height': 186, 'title': 'IE'}
]
print(user_list)
# sort()函数用于对列表进行排序
# key=lambda x: x['height']指定了排序的依据
# reverse=True表示以降序进行排序
user_list.sort(key=lambda x: x['height'], reverse=True)
print(user_list)

标签:二十六,进阶,Python,list,test,参数,print,my,函数
From: https://blog.csdn.net/CSXB99/article/details/143373361

相关文章

  • 初识Python从入门到精通—— 语法及入门 1( 专为Python零基础)
    本文前4章为学习python的辅助章节,简单了解即可,可根据自身情况进行选择学习。程序:指挥计算机工作的指令序列。1.计算机如何处理程序?按照冯·诺依曼存储程序的原理,计算机的工作流程大致如下:1.用户打开程序,程序开始执行;2.操作系统将程序内容和相关数据送入计算机的内存......
  • Java面试题中高级进阶(JVM篇Java垃圾回收)
    前言本来想着给自己放松一下,刷刷博客,突然被几道面试题难倒!说说Java对象创建过程?知道类的生命周期吗?简述Java的对象结构?如何判断对象可以被回收?JVM的永久代中会发生垃圾回收么?你知道哪些垃圾收集算法?似乎有点模糊了,那就大概看一下面试题吧。好记性不如烂键盘***12万字的java面......
  • 毕业设计:电影推荐系统 协同过滤推荐算法 深度学习 Python 爬虫 豆瓣电影 LSTM算法✅
    博主介绍:✌全网粉丝10W+,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业项目实战6年之久,选择我们就是选择放心、选择安心毕业✌>......
  • 手把手教你安装Python解释器!
    文章目录解释器下载安装教程1、先勾选“Addpython.exetoPATH”,再点击“InstallNow”2、等待安装成功后点击“Disablepathlengthlimit”1、使用“Win键+R”呼出运行窗口并输入“cmd”在弹出的窗口中输入“python--version”并回车解释器下载https://pan.quar......
  • 基于Python+Vue开发的健身房管理系统
    项目简介该项目是基于Python+Vue开发的健身房管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的健身房管理系统项目,大学生可以在实践中学习和提升自己......
  • 从零开始的python打怪升级日记 day1
    《python基础篇》......
  • DATA 2100 Major Python Programming
    DATA2100MajorHomeworkPythonProgramming100pointsPurposeInthisassignment,studentswillapplytheir(Python)programmingskillstodevelopadataentryapplicationthatvalidatesentriesagainstadatabaseandthenrecordsvalidentriestothesamed......
  • VBA和Python到底哪个比较难学
    标题:VBA和Python到底哪个比较难学摘要:对于编程初学者,VBA和Python的学习难度受多种因素影响,如个人编程基础、学习环境和目标任务。1、Python通常被视为入门友好的语言;2、VBA深入与Office应用协同工作;3、资源丰富程度;4、语言灵活性与功能性;5、社区支持;6、个人学习倾向。在这些......
  • 使用wxpython开发跨平台桌面应用,实现程序托盘图标和界面最小化及恢复处理
    在前面随笔《基于wxpython的跨平台桌面应用系统开发》介绍了一些关于wxpython开发跨平台桌面应用的总体效果,开发桌面应用,会有很多界面细节需要逐一处理,本篇随笔继续深入该主题,对开发跨平台桌面应用的一些实现细节继续深入研究并总结,介绍程序托盘图标和界面最小化及恢复处理。1、......
  • Python 库可以用来做哪些图像处理操作
    图像处理是一个广阔的领域,Python库多元复杂且功能强大,可以实现以下操作:1、基本图像操作包括裁剪、旋转和缩放、2、颜色转换如灰度、二值化、3、图像过滤比如模糊、锐化、边缘检测、4、图像增强和恢复、5、特征提取、6、图像分割、7、物体检测和识别。让我们详细探讨图像过滤技术,它......