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

湖北省住房和城乡建设厅网站的公示公告网站建设公司西安

湖北省住房和城乡建设厅网站的公示公告,网站建设公司西安,北京学做网站,潍坊网站建设维护列表推导式 列表推导式创建列表的方式更简洁。常见的用法为#xff0c;对序列或可迭代对象中的每个元素应用某种操作#xff0c;用生成的结果创建新的列表#xff1b;或用满足特定条件的元素创建子序列。 例如#xff0c;创建平方值的列表#xff1a; squares [] for …列表推导式 列表推导式创建列表的方式更简洁。常见的用法为对序列或可迭代对象中的每个元素应用某种操作用生成的结果创建新的列表或用满足特定条件的元素创建子序列。 例如创建平方值的列表 squares [] for x in range(10):squares.append(x**2)print(squares) 输出 [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] 注意这段代码创建或覆盖变量 x该变量在循环结束后仍然存在。下述方法可以无副作用地计算平方列表 squares list(map(lambda x: x**2, range(10)))或等价于 squares [x**2 for x in range(10)]上面这种写法更简洁、易读。 列表推导式的方括号内包含以下内容一个表达式后面为一个 for 子句然后是零个或多个 for 或 if 子句。结果是由表达式依据 for 和 if 子句求值计算而得出一个新列表。 举例来说以下列表推导式将两个列表中不相等的元素组合起来 [(x, y) for x in [1,2,3] for y in [3,1,4] if x ! y]输出[(1, 3), (1, 4), (2, 3), (2, 1), (2, 4), (3, 1), (3, 4)] 等价于 combs [] for x in [1,2,3]:for y in [3,1,4]:if x ! y:combs.append((x, y))combs [(1, 3), (1, 4), (2, 3), (2, 1), (2, 4), (3, 1), (3, 4)] 注意上面两段代码中for 和 if 的顺序相同。 表达式是元组例如上例的 (x, y)时必须加上括号 vec [-4, -2, 0, 2, 4] # 用一个值的2倍创建一个新列表 [x*2 for x in vec] [-8, -4, 0, 4, 8]# 排除负数创建列表 [x for x in vec if x 0] [0, 2, 4]# 对所有元素使用绝对值函数 [abs(x) for x in vec] [4, 2, 0, 2, 4]# 每个元素都调用方法 freshfruit [ banana, loganberry , passion fruit ] [weapon.strip() for weapon in freshfruit][banana, loganberry, passion fruit]# 创建一个有2个元素的元组的列表如 (number, square) [(x, x**2) for x in range(6)] [(0, 0), (1, 1), (2, 4), (3, 9), (4, 16), (5, 25)]# 元组必须用括号括起来不然会报错 [x, x**2 for x in range(6)]File stdin, line 1[x, x**2 for x in range(6)]^^^^^^^ SyntaxError: did you forget parentheses around the comprehension target? # 使用带有两个“for”展开列表组vec [[1,2,3], [4,5,6], [7,8,9]] [num for elem in vec for num in elem] [1, 2, 3, 4, 5, 6, 7, 8, 9]列表推导式可以使用复杂的表达式和嵌套函数 from math import pi a[str(round(pi, i)) for i in range(1, 6)] print(a) [3.1, 3.14, 3.142, 3.1416, 3.14159]嵌套的列表推导式 列表推导式中的初始表达式可以是任何表达式甚至可以是另一个列表推导式。 下面这个 3x4 矩阵由 3 个长度为 4 的列表组成 matrix [[1, 2, 3, 4],[5, 6, 7, 8],[9, 10, 11, 12], ] 下面的列表推导式可以转置行列 [[row[i] for row in matrix] for i in range(4)][[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]正如我们在上一节中所看到的内部列表理解是在其后面的for的上下文中评估的因此此示例等效于 transposed [] for i in range(4):transposed.append([row[i] for row in matrix]) transposed [[1, 5, 9], [2, 6, 10], [3, 7, 11], [4, 8, 12]]反过来说也等价于 transposed [] for i in range(4):# the following 3 lines implement the nested listcomptransposed_row []for row in matrix:transposed_row.append(row[i])transposed.append(transposed_row) 实际应用中最好用内置函数替代复杂的流程语句。此时zip() 函数更好用 list(zip(*matrix))[(1, 5, 9), (2, 6, 10), (3, 7, 11), (4, 8, 12)]
http://www.dnsts.com.cn/news/76111.html

相关文章:

  • 如何更换网站空间汉中商城网站建设
  • 成都企业网站备案流程WordPress 4.9添加备案号
  • 网络游戏网站网址大全产品网络营销分析
  • 网站制作前的图片路径免费网站注册com
  • 如何做网站seo优化wordpress 2.0 下载地址
  • 品牌建设网站特点做网站如何在百度快照上排名
  • 汽车之家网页版小时seo加盟
  • 有微重庆网站吗网站服务器放置地 网站接入服务提供单位怎么填
  • 容桂网站建设联系方式广东省水利工程建设信息网站
  • 公司网站开发工具电商网站活动推广
  • 网站建设管理做什么全网营销型推广网站建设
  • 中国建设银行老版本下载官方网站证件照在线制作
  • 天津专业网站建设网站域名申请好了怎么建设网站
  • 网站集约化建设调研报告公司官网如何被百度收录
  • 网站简单布局图保定做网站设计
  • 网站流量数据分析合肥网站制作哪儿好薇
  • 南京网站建设 小程序cdr可不可做网站
  • 做蛋糕的企业网站互联网公司名称
  • 淘宝客网站开发网站开发所需费用支出有哪些
  • 智能模板网站建设方案广告传媒公司起名大全最新
  • c2c的网站有哪些知名企业文化
  • 怎么免费做文学网站网站页面组成部分
  • 安徽智能网站建设前端电商网站登录界面怎么做
  • 求html码源网站湘潭网络推广公司
  • 怎么做网站注册推广工信部资质查询网站
  • 网站建设考虑哪些因素外贸饰品网站
  • 百度域名验证网站前端开发培训费用
  • 网站建设费财务列账wordpress分享后可见
  • 车辆年检查询系统官方网站大连金州房价
  • 气象网站建设的自查报告企业网站宽度