几个小例子告诉你, 一行Python代码能干哪些事
首先你要了解一下Python之禅,一行代码输出“The Zen of Python”:
- python -c "import this"
- """
- The Zen of Python, by Tim Peters
- Beautiful is better than ugly.
- Explicit is better than implicit.
- Simple is better than complex.
- Complex is better than complicated.
- Flat is better than nested.
- Sparse is better than dense.
- Readability counts.
- Special cases aren't special enough to break the rules.
- Although practicality beats purity.
- Errors should never pass silently.
- Unless explicitly silenced.
- In the face of ambiguity, refuse the temptation to guess.
- There should be one-- and preferably only one --obvious way to do it.
- Although that way may not be obvious at first unless you're Dutch.
- Now is better than never.
- Although never is often better than *right* now.
- If the implementation is hard to explain, it's a bad idea.
- If the implementation is easy to explain, it may be a good idea.
- Namespaces are one honking great idea -- let's do more of those!
- """
从“The Zen of Python”也能看出,Python倡导Beautiful、Explicit、Simple等原则,当然我们接下来要介绍的一行Python能实现哪些好玩的功能,可能和Explicit原则相违背。
如果你有其他这方面的小例子,也欢迎评论,我会加到文章中,文章也许会长期更新。
(1)一行代码启动一个Web服务
- python -m SimpleHTTPServer 8080 # python2
- python3 -m http.server 8080 # python3
(2)一行代码实现变量值互换
- a, b = 1, 2; a, b = b, a
(3)一行代码解决FizzBuzz问题:
FizzBuzz问题:打印数字1到100, 3的倍数打印“Fizz”, 5的倍数打印“Buzz”, 既是3又是5的倍数的打印“FizzBuzz”
- for x in range(1, 101): print("fizz"[x % 3 * 4:]+"buzz"[x % 5 * 4:] or x)
(4)一行代码输出特定字符”Love”拼成的心形
- print('\n'.join([''.join([('Love'[(x-y) % len('Love')] if ((x*0.05)**2+(y*0.1)**2-1)**3-(x*0.05)**2*(y*0.1)**3 <= 0 else ' ') for x in range(-30, 30)]) for y in range(30, -30, -1)]))
(5)一行代码输出Mandelbrot图像
Mandelbrot图像:图像中的每个位置都对应于公式N=x+y*i中的一个复数
- print('\n'.join([''.join(['*'if abs((lambda a: lambda z, c, n: a(a, z, c, n))(lambda s, z, c, n: z if n == 0 else s(s, z*z+c, c, n-1))(0, 0.02*x+0.05j*y, 40)) < 2 else ' ' for x in range(-80, 20)]) for y in range(-20, 20)]))
(6)一行代码打印九九乘法表
- print('\n'.join([' '.join(['%s*%s=%-2s' % (y, x, x*y) for y in range(1, x+1)]) for x in range(1, 10)]))
(7)一行代码计算出1-100之间的素数(两个版本)
- print(' '.join([str(item) for item in filter(lambda x: not [x % i for i in range(2, x) if x % i == 0], range(2, 101))]))
- print(' '.join([str(item) for item in filter(lambda x: all(map(lambda p: x % p != 0, range(2, x))), range(2, 101))]))
(8)一行代码输出斐波那契数列
- print([x[0] for x in [(a[i][0], a.append([a[i][1], a[i][0]+a[i][1]])) for a in ([[1, 1]], ) for i in range(30)]])
(9)一行代码实现快排算法
- qsort = lambda arr: len(arr) > 1 and qsort(list(filter(lambda x: x <= arr[0], arr[1:]))) + arr[0:1] + qsort(list(filter(lambda x: x > arr[0], arr[1:]))) or arr
(10)一行代码解决八皇后问题
- [__import__('sys').stdout.write('\n'.join('.' * i + 'Q' + '.' * (8-i-1) for i in vec) + "\n========\n") for vec in __import__('itertools').permutations(range(8)) if 8 == len(set(vec[i]+i for i in range(8))) == len(set(vec[i]-i for i in range(8)))]
(11)一行代码实现数组的flatten功能: 将多维数组转化为一维
- flatten = lambda x: [y for l in x for y in flatten(l)] if isinstance(x, list) else [x]
(12)一行代码实现list, 有点类似与上个功能的反功能
- array = lambda x: [x[i:i+3] for i in range(0, len(x), 3)]
(13)一行代码实现求解2的1000次方的各位数之和
- print(sum(map(int, str(2**1000))))
原文发布时间为:2017-10-26
本文作者:佚名
本文来自云栖社区合作伙伴“51CTO”,了解相关信息可以关注。
几个小例子告诉你, 一行Python代码能干哪些事相关推荐
- 一行python代码能干_几个小例子告诉你, 一行Python代码能干哪些事
首先你要了解一下Python之禅,一行代码输出"The Zen of Python": python -c "import this" "" ...
- 一行 Python 代码能干什么?有意思!
我下班最大的乐趣就是刷抖音 一开始刷的都是一些无聊小剧场 后来看看能不能刷一些技术上的内容 因为本人觉得Java是世界上最好的编程语言 可是我在刷抖音的时候 刷到了一行Python代码能干什么 我突然 ...
- 一行Python代码能干什么?有意思!
我下班最大的乐趣就是刷抖音 一开始刷的都是一些无聊小剧场 后来看看能不能刷一些技术上的内容 因为本人觉得Java是世界上最好的编程语言 可是我在刷抖音的时候 刷到了一行Python代码能干什么 我突然 ...
- 一行Python代码能干什么?惊了!
点击书籍图片,下单输入优惠码"python"立减10元 我下班最大的乐趣就是刷抖音 一开始刷的都是一些无聊小剧场 后来看看能不能刷一些技术上的内容 因为本人觉得Java是世界上最好 ...
- python编程语言能干什么-这 13个,1 行Python代码能干哪些事?
1 行Python代码能干哪些事,这 13个你知道吗? Python的作者有意的设计限制性很强的语法,使得不好的编程习惯(例如if语句的下一行不向右缩进)都不能通过编译.其中很重要的一项就是Pytho ...
- 骚操作!一行Python代码能干嘛
点击 机器学习算法与Python学习 ,选择加星标 精彩内容不迷路 下面给大家介绍50个有趣的Python一行代码,都很实用. 希望大家能从中找到对自己有帮助的技巧. ▍1.字母异位词 两个单词如果包 ...
- c++代码好玩_一行Python代码能干嘛?快来看看吧!有表白利器哦
python有很多优雅有趣的代码写法,同时还很简短,以至于当我刚开始接触这个编程语言的时候,就爱不释手.而前几天的编程语言榜单中python也超越了java成为了第一,挺替python开心的.pyth ...
- 有趣的代码:一行Python代码能干嘛?
前言 python有很多优雅有趣的代码写法,同时还很简短,以至于当我刚开始接触这个编程语言的时候,就爱不释手.而前几天的编程语言榜单中python也超越了java成为了第一,挺替python开心的. ...
- 学了python能干啥举例-1 行Python代码能干哪些事,这 13个你知道吗?
首先你要了解一下Python之禅,一行代码输出"The Zen of Python": python -c "import this" "" ...
最新文章
- 科学计算工具NumPy(2):ndarray的矩阵处理
- 牛客题霸 NC30 数组中未出现的最小正整数
- Webdriver API (二)
- Servlet的运行方式
- VUE:解决判断网页端与手机端情况下,横竖屏无法判断的问题
- 一直跳出来 visual_六天时间排出来肾结石,这种经历再也不要了
- PolarDB-X 云原生分布式数据库 > 最佳实践 > 如何选择分片数
- 结构体在固件库中的应用
- micropython文件上传软件_4-3 为NodeMCU刷入MicroPython固件
- Git 问题:SSL certificate problem: self signed certificate
- 用python编写决策树算法_详细介绍python实现决策树C4.5算法
- 零基础“复刻”经典飞机大战小程序游戏【一篇文使用 IVX 轻松实战5】
- 信号与系统 --- 线性卷积(linear convolution)
- MPEG TS流简介
- Axure RP 9 for Mac 中文版 专业产品原型设计工具
- 信捷plc485通信上位机_上位机开发之三菱FX3U以太网通信实践
- 为什么只有T字型人才实用价值才比较大?
- RAP2开发环境部署
- MCU单片机面试题(1)
- 地铁杂记 - 置换房子的人多了
热门文章
- 计算机硬盘容量分盘计算,硬盘怎么规划分区大小才算科学合理? | 我爱分享网...
- dbeaver导出表结构和数据_Oracle 导入导出表空间跟数据表通用操作笔记
- 实体类dao接口mysql_利用MyBatis生成器自动生成实体类、DAO接口和Mapping映射文件...
- python批量生成,用python批量生成简单的xml文档
- android上传视频 断点续传,断点续传上传
- 向fedora虚拟机中复制文件_Unraid虚拟机中Dockers下搭建WebDAV共享文件服务器
- TypeError: rectangle() got an unexpected keyword argument ‘width‘报错:
- 【项目实战课】基于Pytorch的Pix2Pix黑白图片上色实战
- 【杂谈】有三AI-CV春季划有用吗,听听他们的分享
- 【杂谈】篇篇精华,有三AI不得不看的技术综述(超过100篇核心干货)