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)

相关推荐

  • 怎么用代码搞定Scrapy随机 User-Agent

    技术怎么用代码搞定Scrapy随机 User-Agent今天就跟大家聊聊有关怎么用代码搞定Scrapy随机 User-Agent,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可

    攻略 2021年12月4日
  • go语言怎么创建websocket服务(golang怎么并发聊天服务器)

    技术GO使用socket和channel怎么实现简单控制台聊天室今天就跟大家聊聊有关GO使用socket和channel怎么实现简单控制台聊天室,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大

    攻略 2021年12月20日
  • html5璁剧疆椤甸潰瀹藉害(html5中元素能不能拉伸宽度)

    技术html5中元素能不能拉伸宽度这篇文章给大家分享的是有关html5中元素能不能拉伸宽度的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。 html中元素能拉伸宽度,

    攻略 2021年12月25日
  • 一起刷LeetCode

    技术一起刷LeetCode 一起刷LeetCode事件背景
    寒假在家没事,准备重新开始每日算法训练。
    在写题解的过程中发现,或许应该把它们统一记录下来。
    如何刷算法
    刷算法的目的有三
    1. 练习某一门语

    礼包 2021年12月23日
  • swing五种常见的布局是什么(swing中的常用布局方式)

    技术怎样进行Swing Set示例的分析怎样进行Swing Set示例的分析,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。Swing 工具包提供各种用于

    攻略 2021年12月19日
  • jquery sibling是什么

    技术jquery sibling是什么这篇文章主要讲解了“jquery sibling是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“jquery sibling是什

    攻略 2021年11月15日