python怎么样另存为_python要怎么保存python生成式
本篇将介绍Python的列表生成式,更多内容请参考:Python列表生成式
列表生成式即List Comprehensions,是Python内置的非常简单却强大的可以用来创建list的生成式。
举个例子,要生成list[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]可以用list(range(1, 11))
>>>list(range[1, 11])
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10,]
但是要生成[1×1, 2×2, 3×3, 4×4,..., 10×10]怎么做?方法一是循环:
>>>L = []
>>>for x in range(1, 11):
L.append(x * x)
>>>L
[1, 4 ,9 ,16, ..., 100]
但是循环太繁琐,而列表生成式则可以用一行语句代替循环生成上面的list:
>>>[x*x for x in range(1, 11)]
[1, 4, 16, 25, 36, 49, 64, 81, 100]
写列表生成式时,把要生成的元素x * x放在前面,后面跟for循环,就可以把list创建出来,十分有用,多写几次,很快就可以熟悉这种语法。
for循环后面还可以加上if判断,这样我们就可以筛选出仅偶数的平方:
>>>[x*x for x in range(1, 11) if x % 2 == 0]
[4, 16, 64, 100]
还可以使用两层循环,还可以生成全排列:
>>>[m+n for m in 'ABC' for n in 'XYZ']
['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']
三层和三层以上的循环就很少使用了。
运用列表生成式,可以写出非常简洁的代码。例如,列出当前目录下的所有文件和目录名,可以通过一行代码实现:
>>>import os #导入os模块
>>>[d for d in os.listdir('.')] #os.listdir可以列出文件和目录
for循环其实可以同时使用两个甚至多个变量,比如dict的items()可以同时迭代key和value:
>>>d = {'X':'A', 'y':'B', 'z':'C'}
>>>for k, v in d.items():
print(k, '=', 'v')
y = B
x = A
z = C
因此,列表生成式也可以使用两个变量来生成list:
>>>d = {'x':'A', 'y':'B', 'z':'C'}
>>>[k+= ' ='+v for k, v in d.items()]
['y=B', 'x=A', 'z=C']
最后把一个list中所有的字符串变成小写:
W WW.002pc .COM对《python要怎么保存python生成式》总结来说,为我们学习Python很实用。>>>L = ['Hello', 'World', 'IBM', 'Apple']
>>>[s.lower() for s in L]
['hello', 'world', 'ibm', 'apple']
复杂表达式
1、使用for循环的迭代不仅可以迭代普通的list,还可以迭代dict。
假设有如下的dict:
d = {'Adam':95, 'Lisa':85, 'Bart':59}
完全可以通过一个复杂的列表生成式把它变成一个HTML表格:
tds = ['
%s%s'%(name, score) for name, score in d.items()]
print('
print('
NameScore')
print '\n'.join(tds)
print('
')
注意:字符串可以通过%进行格式化,用指定的参数替代%s。字符串的join()方法可以把一个list拼接成一个字符串。
2、在生成的表格中,对于没有及格的同学,请把分数标记为红色。
d = {'Adam':95, "Lisa":85, "Bart":59}
def generate_tr(name, score):
if score < 60:
return '
%s%s' %s(name, score)
return '
NameScore'%(name, score)
tds = [generate_tr(name, score) for name, score in d.items()]
print('
print('\n'.join(tds))
print('
')
3、条件过滤
列表生成式的for循环后面还可以加上if判断,例如:
>>>[x * x for x in range(1, 11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
如果我们只想要偶数的平方,不改动range()的情况下,可以加上if来筛选:
>>>[x*x for x in range(1, 11) if x % 2 == 0]
[4, 16, 64, 100]
有了if条件,只有if判断为True的时候,才把循环的当前元素添加到列表中。
编写一个函数,它接收一个list,然后把list中的所有字符串变成大写后返回,非字符串元素将被忽略。
[x.upper() for x in L if isinstance(x, str)]
参考
列表生成式--学习笔记
廖雪峰-生成式
更多:python要怎么保存python生成式
https://www.002pc.comhttps://www.002pc.com/python/3907.html
你可能感兴趣的生成式,python
No alive nodes found in your cluster
0踩
赏
0 赞
python怎么样另存为_python要怎么保存python生成式相关推荐
- 视频教程-快速入门Python基础教程_Python基础知识大全-Python
快速入门Python基础教程_Python基础知识大全 十余年计算机技术领域从业经验,在中国电信.盛大游戏等多家五百强企业任职技术开发指导顾问,国内IT技术发展奠基人之一. 杨千锋 ¥99.00 立即 ...
- 视频教程-快速入门Python基础教程_Python基础进阶视频-Python
快速入门Python基础教程_Python基础进阶视频 十余年计算机技术领域从业经验,在中国电信.盛大游戏等多家五百强企业任职技术开发指导顾问,国内IT技术发展奠基人之一. 杨千锋 ¥199.00 立 ...
- python cms模板_python基础-第一个python程序
前言 上一章中,我们介绍了怎么去安装python环境,作为我们入门python的先决条件,今天,我们通过编写第一个python应用程序的方式,正式进入python的大门. 首先,关于python,有两 ...
- python的认识_Python学习之认识python
Python 版本 Python 从1989年诞生的第一个版本,到目前为止,存在 python2 和 python3 两个版本,并且两个版本不兼容.目前python 程序中 python2 占比依然 ...
- 简述python的优点_Python是什么及Python的优点和缺点
前面提到,编程语言有"高低"之分,而高级语言又有诸多版本,比如 C .C++.Java 等,「Python」也是其中之一.Python 语言算得上一门"古老"的 ...
- [转载] 递归函数python基例_python递归函数详解 python 递归函数使用装饰器
参考链接: Python递归 移动宽带检查显示 CRM,radius状态不一致是怎么回事啊?您可以把电信宽带猫等设备重启试一下,如果仍然不行,可以拨打10000号请工作人员帮您查看.处理. 电信宽带诊 ...
- python pyplot安装_Python学习-windows安装Python以及matplotlib.pyplot包
引文: Python自带了许多的库文件,其中matplotlib可以做出类似于MATLAB和R语言一样绘制出很好的图形功能,下面介绍下怎么安装这个包,因为自己安装的时候很多地方都出错了. 环境: Wi ...
- python中文免费版_Python官方免费版下载|Python中文版 V3.8.0 -推背图下载站
Python中文版是一款便捷的计算机程序设计语言,Python中文版它能够帮助程序员快速编写代码,并且脚本运行速度非常快,中内置丰富的类库,随着功能的不断更新,添加越来越多的新功能,它能够处理的任务越 ...
- 开源的python有限元软件_Python与有限元--基于Python编程的有限元分析及应用扩展...
第1章 编程基础--Python.Numpy.Matplotlib简介 1.1 Python简介 1.1.1 什么是Python 1.1.2 Python及其库安装 1.1.3 Python ...
最新文章
- python -m参数
- webpack中loader加载器配置postCss自动添加CSS兼容前缀
- java范例_Java范例集锦(一)
- 福音!微信个人公众号可以改名了!
- PyCharm点击设置没反应,无法进行设置
- python浅拷贝深拷贝
- 如何在Windows上安装Python
- 2021年SWPUACM暑假集训day2并查集算法
- 【论文解读】“推荐系统”加上“图神经网络”
- python_flask框架Ubuntu16.04下环境搭建
- 在ASP.NET 2.0中实现URL重写
- 鸿蒙系统下载 绿色,WiseFolderHider(文件夹加密软件)4.3.7
- 兄弟连LAMP环境搭建
- 计算机在档案部门应用范围,计算机在档案管理中的应用
- 行业观察(一)| 从渠道为王到数据为王——浅谈服装零售企业的数字化转型
- 栈与队列篇:347. 前 K 个高频元素(难度 中等)
- 如何使用python编程抢京东优惠券 知乎_小猿圈Python之实现京东秒杀功能技巧
- 头条案例登录注册功能
- Spring Boot -- JPA
- 笔记本卡顿不流畅是什么原因_笔记本卡顿不流畅是什么原因_笔记本电脑卡顿不流畅如何解决-win7之家...
热门文章
- C# 观察者模式 以及 delegate 和 event
- 使用 Angular
- 剑网服务器维护,12月31日服务器例行维护公告
- java 物理内存_聊聊Java中的内存
- 【GIS风暴】GIS拓扑关系原理详解
- Android之All children of ConstraintLayout must have ids to use ConstraintSet
- linux之让终端支持C++11/14编译cpp文件
- C++之invalid initialization of non-const reference of type ‘int’ from an rvalue of type ‘int’
- 【C语言简单说】十:小结
- html td显示隐藏,显示/隐藏Html TR/TD