什么情况下需要用到拆包?

当我们的函数需要传入不定长参数或者多个参数时,为了方便我们可以将参数放在list/tuple/dict里面,然后一次性传给函数。比如下面这个求和函数

def nums_sum(*agrs):

sum = 0

for i in agrs:

sum += i

return sum

list拆包

现在将需要传入的参数放在一个list里面,想要将这个list传给函数,那么就需要将这个list拆成一个一个的传给函数了,我们可以这样做

list1 = [1,2,3]

nums_sum(*list1)

# 结果和直接传参是一样的

nums_sum(1,2,3)

tuple拆包

上面拆了list,下面拆tuple也是一样的处理

tuple1 = (1,2,3,4,5)

nums_sum(*tuple1)

# 结果和直接传参是一样的

nums_sum(1,2,3,4,5)

字典拆包 - 给函数传参。 key=value

def newdict(**kwargs):

print(kwargs)

# 第一种传参,直接传 key=value

newdict(name="xj", age=10)

# 第二种传参,将mydict拆包传给函数, ** 表示拆字典

mydict = {"name":"xj", "age":10}

newdict(**mydict)

# 返回结果是一样,如下

{'name': 'xj', 'age': 10}

下面是一个输入参数然后拆包的实例

def nums_sum(*agrs):

sum = 0

for i in agrs:

sum += i

return sum

nums = input('请输入需要求和的数字,用逗号隔开:') # 结果为 2,3,4,5 这种

newlist = []

for i in nums.split(','):

newlist.append(float(i)) # 将输入的字符串类型的数字转换为float类型,添加到list中

print(nums_sum(*newlist)) # 将list拆包传给函数

python列表拆包_python拆包相关推荐

  1. python 列表解析式_python列表解析式,字典解析式,集合解析式和生成器

    一.列表解析式(列表推倒式): 功能:是提供一种方便的列表创建方法,所以,列表解析式返回的是一个列表. 1 lst = [1, 3, 5, 8, 10] 2 ll = [x+x for x in ls ...

  2. python列表分割_python列表分割

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! ①list从list列表下标a起取值,每次加b在取值,直到大于或等于list长度 ...

  3. python列表反向_python反向列表

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我正在尝试根据最高值创建某种记分牌. 我添加了reverse = true标志但 ...

  4. python 列表推导_Python 列表推导式使用的注意事项

    python视频教程栏目介绍Python列表推导式的使用. Python 列表推导式并不是给初学者用的,因为它非常反直觉,甚至对于有其他编程语言背景的人也是如此. 我们接触到 List 的使用时,学习 ...

  5. python列表连接_Python连接列表

    python列表连接 Python join list means concatenating a list of strings with a specified delimiter to form ...

  6. python 列表拆分_python列表拆分

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我对python很新,但我遇到了问题. 我有一个看起来像列表的文本文件. 例如: ...

  7. python列表题目_Python列表练习题

    原标题:Python列表练习题 1.创建一个空列表,命名为names,往里面添加 Lihua.Rain.Jack.Xiuxiu.Peiqi和Black元素. 2.往(1)中的names列表里Black ...

  8. python 列表排序_python列表排序有哪些

    python列表排序:1.冒泡排序,是一种简单的排序算法,它重复地遍历要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来:2.插入排序,通过构建有序序列,对于未排序数据,在已排序序列中 ...

  9. python 列表迭代_Python | 以相反的顺序迭代列表

    python 列表迭代 Given a list and we have to iterate it in reverse order in python. 给定一个列表,我们必须在python中以相 ...

  10. python列表去重_python列表去重

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 方法一:利用集合去重 # ! usrbinpython3# -*- coding ...

最新文章

  1. Vue基础进阶 之 过渡效果
  2. 正则表达式的比较JDK1.4 vs jakarta
  3. 中科元素精准饮食治未病干预 李喜贵:签约华佗国药体系建立
  4. STM32中常用的C语言知识点,开始复习!
  5. flask mysql环境配置_Flask干货:访问数据库——Flask-SQLAlchemy初始化
  6. [Java基础]IO流概述和分类
  7. java爬虫之基于httpclient的简单Demo(二)
  8. base昆明,腾讯云在合作伙伴的阵营中@了TA
  9. 数据库路由中间件MyCat - 使用篇(1)
  10. Python入门--元组的遍历,获取元组元素
  11. 美赛O奖论文翻译-2015埃博拉病毒
  12. Vue引入Froala-Editor富文本编辑器
  13. 计算机策略组无法打开怎么办,本地组策略打不开,怎么解决
  14. AES256加解密java语言实现
  15. Centos8关闭防火墙
  16. C++ 游戏开发(一)图形库EasyX的安装及测试
  17. 我的互联网创业公司的第一笔收入磨难记
  18. python str转换int
  19. js实现touch移动触屏滑动事件
  20. 最近学习数学的一些感受(一家之言,仅供一笑)。

热门文章

  1. 数学建模对计算机的CPU150,三星Exynos M1秒了A9处理器,能击败骁龙820吗?
  2. 拍摄的风景视频中,如何快速有效地去除视频中的杂物?
  3. 在家参加OCP考试(MySQL OCP和Oracle OCP)
  4. 第一章 Python初探
  5. 7-20 打印九九口诀表(分数 15)
  6. 利用grub引导多系统debian8.0+win7+ubuntu16.04
  7. 一些调格式的经验 插入图注和尾注
  8. 电子钱包电子存折,区别
  9. 春招计算机学校,衡东计算机IT春招学校排名
  10. End-to-End Object Detection with Fully Convolutional Network