当前位置: 首页 > news >正文

网站备案工信部/重庆seo技术教程博客

网站备案工信部,重庆seo技术教程博客,花生壳做局域网站,江苏中高风险地区名单本篇文章给大家带来的内容是关于Python中数据结构与算法的应用(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。问题1现在有一个包含 N 个元素的元组或者是序列,怎样将它里面的值解压后同时赋值给 N 个变量…

本篇文章给大家带来的内容是关于Python中数据结构与算法的应用(附示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助。

问题1

现在有一个包含 N 个元素的元组或者是序列,怎样将它里面的值解压后同时赋值给 N 个变量?

解决方案

任何的序列(可迭代对象)可以通过一个简单的赋值语句解压并赋值给多个变量。前提是变量的数量和序列元素的数量要一致。In [3]: p = (4,5)

In [4]: x,y = p

In [5]: x

Out[5]: 4

In [6]: y

Out[6]: 5

In [7]: data = ['ACME', 50, 91.1, (2012, 12, 21)]

In [8]: name, shares, price, date = data

In [9]: name

Out[9]: 'ACME'

In [10]: shares

Out[10]: 50

In [11]: date

Out[11]: (2012, 12, 21)

如果变量数量和序列元素数量不匹配,会产生一个异常。In [12]: p = (x,5)

In [13]: a,b,c = p

---------------------------------------------------------------------------

ValueError Traceback (most recent call last)

in ()

----> 1 a,b,c = p

ValueError: not enough values to unpack (expected 3, got 2)

这种解压赋值可以用在任何可迭代对象中,不仅仅是列表或者元组,还包括字符串,文件对象,迭代器和生成器。In [14]: A = 'hello'

In [15]: a,b,c,d,e = A

In [16]: a

Out[16]: 'h'

In [17]: b

Out[17]: 'e'

In [18]: c

Out[18]: 'l'

In [19]: d

Out[19]: 'l'

In [20]: e

Out[20]: 'o'

In [21]: a,b,c,d,e

Out[21]: ('h', 'e', 'l', 'l', 'o')

对于只想解压序列其中一部分,丢弃其中一些值,只需要用一些不需要的变量名去占用掉相应位置的序列元素即可。In [22]: data = [ 'ACME', 50, 91.1, (2012, 12, 21) ]

In [23]: _, shares, price, _ = data

In [24]: shares

Out[24]: 50

In [25]: price

Out[25]: 91.1

问题2

如果一个可迭代对象的元素个数超过变量个数时,会抛出一个 ValueError 。那么怎样才能从这个可迭代对象中解压出 N 个元素出来?

解决方案

Python的星号表达式可以解决这个问题。比如,你在学习一门课程,在学期末的时候,你想统计下家庭作业的平均成绩,但是排除掉第一个和最后一个分数。如果只有四个分数,你可能就直接去简单的手动赋值,但如果有 24 个呢?这时候星号表达式就派上用场了:

在函数的调用中,简单的通过变量名位置进行匹配,但是使用name=value的形式告诉Python依旧按照变量名进行匹配,这些叫做关键字参数。在调用中使用 *sequence 或者 **dict 允许我们在一个序列或者字典中相应的封装任意多的位置相关或者关键字的对象,并且在它们传递给函数的时候,将它们解包为分开的,单个的参数。In [26]: def drop_first_last(grades):

....: first,*middle,last = grades

....: return avg(middle)

http://www.jmfq.cn/news/4995091.html

相关文章:

  • 针对网站开发软件 代替手动/网站收录优化
  • 简述网站规划的主要任务/优化资源配置
  • 怎么开发网站平台/seo推广公司
  • 跨境电商网站开发文档/提高工作效率的重要性
  • 做网站原型图/网站推广的软件
  • 网站临时会话/小程序开发一个多少钱啊
  • 别人帮做的网站到期续费/seo查询爱站网
  • wordpress仪表盘/seo交互论坛
  • 企业介绍ppt案例欣赏/昭通网站seo
  • 在360怎么做网站/北京seo服务行者
  • 如何在电商网站做市场调研/关键词首页排名优化
  • 网站建设的电话销售/接广告推广
  • idea建设完整的网站/如何规划企业网络推广方案
  • 哪些网站专做新闻/开鲁网站seo站长工具
  • 常见网站结构有哪些/google谷歌搜索主页
  • 每天网站外链做几条最好/2023新闻摘抄十条
  • 企业推广费用占比多少合适/网络营销seo培训
  • 广州公司网站设计/百度一下打开
  • 网站怎么做才是对搜索引擎友好/厦门人才网597人才网
  • 郑州做网站zztuotian/如何自己创建一个网站
  • 企业模板网站建设/搭建一个app平台要多少钱
  • 做阿里国际网站多少钱/最近三天的新闻大事
  • 怎样用jsp做网站/中国国家人事人才培训网证书查询
  • ui自学网站/高端营销型网站建设
  • 广州网站app制作公司/seo发包技术教程
  • 海外直邮购物网站/外贸网站推广
  • 怎样做网站地图/2022百度指数排名
  • 做博客网站如何盈利/美食软文300范例
  • 还有做网站的必要吗/建站公司最新报价
  • wordpress多站点 文章/龙斗seo博客