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

鲜花网站建设论文网站建设找丿金手指排名

鲜花网站建设论文,网站建设找丿金手指排名,纯flash网站欣赏,简单5步 制作wordpress留言板问题需要从某个可迭代对象中分解出 N 个元素#xff0c;但是这个可迭代对象的长度可能超过 N#xff0c;这会导致出现“需要解包的值过多(too many values to unpack)”的异常。解决方案“星号表达式”可以用来解决这个问题。例如#xff0c;假设开设了一门课程#xff0c;…问题需要从某个可迭代对象中分解出 N 个元素但是这个可迭代对象的长度可能超过 N这会导致出现“需要解包的值过多(too many values to unpack)”的异常。解决方案“星号表达式”可以用来解决这个问题。例如假设开设了一门课程并决定在期末的作业成绩中去掉第一个和最后一个只对中间剩下的成绩做平均分统计。如果只有 4 个成绩也许可以简单地将 4 个都分解出来但是如果有 24 个呢星号表达式使这一切都变得简单def drop_first_last(grades): first, *middle, last gradesreturn sum(middle) / len(middle)另一个用例是假设有一些用户记录记录由姓名和电子邮件地址组成后面跟着任意数量的电话号码。则可以像这样分解记录 record (Dave, daveexample.com, 773-555-1212, 847-555-1212) name, email, *phone_numbers record nameDave emaildaveexample.com phone_numbers[773-555-1212, 847-555-1212] 值得注意的是上面解压出的 phone_numbers 变量永远都是列表类型不管解压的电话号码数量是多少(包括 0 个)。所以任何使用到 phone_numbers 变量的代码就不需要做多余的类型检查去确认它是否是列表类型了。由星号修饰的变量也可以位于列表的第一个位置。例如用一系列的值来代表公司过去 8 个季度的销售额。如果想对最近一个季度的销售额同前 7 个季度的平均值做比较可以这么做*trailing_qtrs, current_qtr sales_recordtrailing_avg sum(trailing_qtrs) / len(trailing_qtrs)return avg_comparison(trailing_avg, current_qtr)下面是在 Python 解释器中执行的结果 *trailing, current [10, 8, 7, 1, 9, 5, 10, 3] trailing[10, 8, 7, 1, 9, 5, 10] current3讨论扩展的迭代解压语法是专门为解压不确定个数或任意个数元素的可迭代对象而设计的。通常这些可迭代对象的元素结构有确定的规则(比如第 1 个元素后面都是电话号码)星号表达式让开发人员可以很容易的利用这些规则来解压出元素来。而不是通过一些比较复杂的手段去获取这些关联的元素值。值得注意的是星号表达式在迭代元素为可变长元组的序列时是很有用的。比如下面是一个带有标签的元组序列records [ (foo, 1, 2),(bar, hello),(foo, 3, 4)]def do_foo(x, y): print(foo, x, y)def do_bar(s): print(bar, s)for tag, *args in records: if tag foo: do_foo(*args)elif tag bar: do_bar(*args)星号解压语法在字符串操作的时候也会很有用比如字符串的分割。代码示例 line nobody:*:-2:-2:Unprivileged User:/var/empty:/usr/bin/false uname, *fields, homedir, sh line.split(:) unamenobody homedir/var/empty sh/usr/bin/false有时候你想解压一些元素后丢弃它们你不能简单就使用 * 但是你可以使用一个普通的废弃名称比如 _ 或者 ign (ignore)。代码示例 record (ACME, 50, 123.45, (12, 18, 2012)) name, *_, (*_, year) record nameACME year2012在很多函数式语言中星号解压语法跟列表处理有许多相似之处。比如如果你有一个列表你可以很容易的将它分割成前后两部分 items [1, 10, 7, 4, 5, 9] head, *tail items head1 tail[10, 7, 4, 5, 9]如果你够聪明的话还能用这种分割语法去巧妙的实现递归算法。比如def sum(items): head, *tail itemsreturn head sum(tail) if tail else headprint(sum([1, 10, 7, 4, 5, 9]))然后由于语言层面的限制递归并不是 Python 擅长的。因此最后那个递归演示仅仅是个好奇的探索罢了对这个不要太认真了。
http://www.huolong8.cn/news/51803/

相关文章:

  • wordpress转换中文版怎样进行seo优化
  • 网站主导航设置问题wordpress 文章聚合
  • 手机网站微信登陆wordpress 移动app
  • 精品网站建设费用wordpress整合问答系统
  • 大丰市市城乡建设局网站做一个招聘信息的网站_用什么做网站的软件
  • 舟山建设银行网站中建名城建设有限公司 网站
  • 手机电商网站模板临漳seo整站排名
  • 做网站后端需要什么语言wordpress找不到页面内容编辑
  • 怎样可以免费做网站建企业网站建设注意问题
  • c语言怎么做网站网站轮播动态图如何做
  • 网站建设是前端吗禁用Wordpress响应模式
  • 科技感网站设计哪些属于网站评论
  • 徐州建立网站广州小型企业网站建设
  • 百度网站域名注册手机代理ip海外免费
  • 如何使用阿里云做网站做网站开公司
  • 曲靖网站建设公司靖网站建设南阳企业网站seo
  • 个人网站开发用到的技术仿站小工具+wordpress
  • zencart 网站安装wordpress增加知识共享协议
  • 合作客户北京网站建设wordpress技术博客
  • 洛阳鼎和电力建设有限公司网站上海市奉贤区建设局网站
  • 徐州网站建设报价网站建设合同司法解释
  • 关于建设二级网站的报告怎样用百度做网站优化
  • 石家庄网站关键词推广建设银行官网首页网站公告
  • 自己的电脑做服务器,并建网站大连工程建设信息网
  • 手机网站制作公司网站筹建中
  • 基因网站开发电子工程师证怎么考
  • 哪里网站建设专业好看动漫网替代网站
  • 自己做的网站被篡改怎么办网络科技公司企业简介
  • wordpress腾讯云无锡seo推广优化
  • 导航网站如何被百度收录saas小程序开发