python中拆包解包用法详解

命运对每个人都是一样的,不一样的是各自的努力和付出不同,付出的越多,努力的越多,得到的回报也越多,在你累的时候请看一下身边比你成功却还比你更努力的人,这样,你就会更有动力。

导读:本篇文章讲解 python中拆包解包用法详解,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

python可以对元组和字典进行拆包或解包操作。

1、拆包:元组

示例代码1:

def return_num():
    return 100, 200


num1, num2 = return_num()
print(num1)  # 100
print(num2)  # 200

运行结果:

python中拆包解包用法详解

示例代码2:

def return_num1():
    return 100, 200


def return_num2():
    return 100, 200, 300


def return_num3():
    return 100, 200, 300, 400, 500


def func(num1, num2):
    print(num1, num2)


def func2(num1, num2, *args):
    print(num1, num2, args)


if __name__ == '__main__':
    func(*return_num1())
    # func(*return_num2())  # 报错:TypeError: func() takes 2 positional arguments but 3 were given
    func2(*return_num1())
    func2(*return_num2())
    func2(*return_num3())

运行结果:

python中拆包解包用法详解

2、拆包:字典

示例代码1:

dict1 = {'name': 'TOM', 'age': 18}
a, b = dict1

# 对字典进⾏拆包,取出来的是字典的key
print(a)  # name
print(b)  # age
print(dict1[a])  # TOM
print(dict1[b])  # 18

运行结果:

python中拆包解包用法详解

示例代码2:

dic = {'aa': 'AA', 'bb': 'BB'}
dic2 = {'aa': 'AA', 'bb': 'BB', 'cc': 'CC'}
dic3 = {'aa': 'AA'}


def func(aa, bb):
    print(aa, bb)


if __name__ == '__main__':
    func(**dic)
    # func(**dic2)  # 此时报错:TypeError: func() got an unexpected keyword argument 'cc'
    # func(**dic3)  # 此时报错:TypeError: func() missing 1 required positional argument: 'bb'

运行结果:

python中拆包解包用法详解

示例代码3:

dic = {'aa': 'AA', 'bb': 'BB'}
dic2 = {'aa': 'AA', 'bb': 'BB', 'cc': 'CC', 'dd': 'DD'}
dic3 = {'aa': 'AA'}


def func(aa, bb, **kwargs):
    print(aa, bb, kwargs)
    print(aa, bb, kwargs.get('cc'))


if __name__ == '__main__':
    func(**dic)
    func(**dic2)

运行结果:

python中拆包解包用法详解

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由半码博客整理,本文链接:https://www.bmabk.com/index.php/post/142738.html

(0)

相关推荐

  • Nginx快速入门及访问本地静态资源

    书读的越多而不加思考,你就会觉得你知道得很多;而当你读书而思考得越多的时候,你就会越清楚地看到,你知道得很少。

    导读:本篇文章讲解 Nginx快速入门及访问本地静态资源,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

    2023年3月4日
    00
  • Web开发前奏

    命运对每个人都是一样的,不一样的是各自的努力和付出不同,付出的越多,努力的越多,得到的回报也越多,在你累的时候请看一下身边比你成功却还比你更努力的人,这样,你就会更有动力。

    导读:本篇文章讲解 Web开发前奏,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

    后端笔记 2023年5月24日
    00
  • 【Mybatis】Mybatis简介及第一个简单demo搭建

    生活中,最使人疲惫的往往不是道路的遥远,而是心中的郁闷;最使人痛苦的往往不是生活的不幸,而是希望的破灭;最使人颓废的往往不是前途的坎坷,而是自信的丧失;最使人绝望的往往不是挫折的打击,而是心灵的死亡。所以我们要有自己的梦想,让梦想的星光指引着我们走出落漠,走出惆怅,带着我们走进自己的理想。

    导读:本篇文章讲解 【Mybatis】Mybatis简介及第一个简单demo搭建,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

    后端笔记 2023年4月22日
    00
  • (第十列)C语言基础练习:打印杨辉三角,文字解释太烦,直接代码解析。

    导读:本篇文章讲解 (第十列)C语言基础练习:打印杨辉三角,文字解释太烦,直接代码解析。,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    后端笔记 2023年2月28日
    00
  • MyBatis实践之动态语句

        一、 概述     二、动态语句     &nbsp…

    2023年3月16日
    00
  • (七)、首页列表数据渲染【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】

    有目标就不怕路远。年轻人.无论你现在身在何方.重要的是你将要向何处去。只有明确的目标才能助你成功。没有目标的航船.任何方向的风对他来说都是逆风。因此,再遥远的旅程,只要有目标.就不怕路远。没有目标,哪来的劲头?一车尔尼雷夫斯基

    导读:本篇文章讲解 (七)、首页列表数据渲染【uniapp+uinicloud多用户社区博客实战项目(完整开发文档-从零到完整项目)】,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

    后端笔记 2023年4月20日
    00
  • Spring AOP经典应用场景

        一、日志处理     二、事务控制     三、参数…

    2023年3月16日
    00
  • 巧用代理实现本地调用测试容器微服务

    在微服务构架中,一个项目产品会涉及很多个服务,而且维护人员也很多。在开发过程中,本地调试能够极大地提升开发效率,但在微服务构架中,本地调试经常会遇到很大的问题。 当一个服务依赖多个…

    2023年3月16日
    00
  • vue 校验规则 防止多次点击弹窗重新触发

    导读:本篇文章讲解 vue 校验规则 防止多次点击弹窗重新触发,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

    后端笔记 2023年3月3日
    00
  • 【Docker】Mysql主从复制&Redis集群

    命运对每个人都是一样的,不一样的是各自的努力和付出不同,付出的越多,努力的越多,得到的回报也越多,在你累的时候请看一下身边比你成功却还比你更努力的人,这样,你就会更有动力。

    导读:本篇文章讲解 【Docker】Mysql主从复制&Redis集群,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com,来源:原文

    后端笔记 2023年5月24日
    00

发表回复

登录后才能评论