Python解压可迭代对象赋值给多个变量的示例分析

技术Python解压可迭代对象赋值给多个变量的示例分析今天就跟大家聊聊有关Python解压可迭代对象赋值给多个变量的示例分析,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有

今天,我将和大家谈谈Python解压缩可迭代对象并将其分配给多个变量的示例分析,很多人可能不太理解。为了让大家更好的了解,边肖为大家总结了以下内容,希望大家能从这篇文章中有所收获。

问题描述

现在有一个包含n个元素的可迭代对象。如何解压其中的元素,同时赋给n个变量?如何同时给m个变量(MN)赋值?

解决方案

1.将N个元素赋值给N个变量,可以通过如下一个简单的赋值语句实现。

p=[4,5]

x,y=p

打印(x,y)

#输出结果:45

数据=['测试',1,3.14,(2021,12,1)]

a、b、c、d=数据

印刷品(a、b、c、d)

#输出结果:测试13.14(2021年12月1日)

a,b,c,(年,月,日)=数据

打印(a、b、c、年、月、日)

#输出结果:Test13.142021121

2.如何将N个元素赋值给M个变量(MN)?

当变量个数小于可迭代对象元素个数时,程序会抛出ValueError。这时候可以通过Python的星号表达式来解决。

数据=[1,2,3,4,5]

a,b,*c,d=数据

印刷品(a、b、c、d)

#输出结果:12[3,4]5需要注意的是,上面提取的C变量总是类型列表,与C的元素个数无关(包括0)。

00-1010迭代解压缩语法的几种应用场景:

例如00-1010:

s='你好'

a,b,c,d,e=s

打印(a、b、c、d、e)#输出结果:h、e、l、o

总结

记录=('ACME ',50,123.45,(12,18,2012))

名称,*_,(*_,年份)=记录

打印(姓名、年份)'''

输出:

ACME 2012

'''

1.任何可迭代对象都可以实现这种解压赋值,包括列表、元组、字符串、文件对象、迭代器和生成器。

记录=[

(' foo ',1,2),

(“酒吧”,“你好”),

(' foo ',3,4),

]

defprint_foo(x,y):

打印(' foo ',x,y)

defprint _ bar :

打印(条形)

福塔格,* argsinrecords:

iftag=='foo':

print_foo(*args)

eliftag=='bar':

print_bar(*args)' ' '

输出:

foo 1 2

酒吧你好

foo 3 4

'''

2.有时候,你想解压一些元素后丢弃它们,可以使用一个普通的废弃名称,比如_或者ign(ignore)。

行=' nobody : * :-2:-2: unprivilegeduser :/var/empty :/usr/bin/false '

uname,*field,homedir,sh=line.split(': ')

打印(uname,homedir,sh)' ' '

输出:

无人/var/空/usr/bin/false

'''

看完上面的内容,你对Python解压可迭代对象并分配给多个变量的示例分析有了更好的理解吗?如果您想了解更多知识或相关内容,请关注行业资讯频道,感谢您的支持。

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/134017.html

(0)

相关推荐

  • vue-countTo --

    技术vue-countTo -- vue-countTo --- 数字滚动插件vue-countTo是一个无依赖,轻量级的vue组件,可以自行覆盖easingFn。
    你可以设置startVal和endV

    礼包 2021年12月13日
  • row cache lock引起的性能问题的处理分析是什么

    技术row cache lock引起的性能问题的处理分析是什么本篇文章为大家展示了row cache lock引起的性能问题的处理分析是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有

    攻略 2021年12月1日
  • 如何探讨Java代理模式与反射机制的实际应用

    技术如何探讨Java代理模式与反射机制的实际应用如何探讨Java代理模式与反射机制的实际应用,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Java提供了一套

    攻略 2021年11月21日
  • 怎么理解Mysql GITD复制中断处理

    技术怎么理解Mysql GITD复制中断处理怎么理解Mysql GITD复制中断处理,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。从库发现复制错误: "ro

    攻略 2021年11月16日
  • 有哪些VS代码插件

    技术有哪些VS代码插件这篇文章主要介绍“有哪些VS代码插件”,在日常操作中,相信很多人在有哪些VS代码插件问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”有哪些VS代码插件”的疑惑有所帮助!

    攻略 2021年11月2日
  • jquery如何查询第一个子节点

    技术jquery如何查询第一个子节点本篇内容主要讲解“jquery如何查询第一个子节点”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“jquery如何查询第一个子节点”吧!

    攻略 2021年11月16日