首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

一行代码让你爱上Python

Python 的特点就是可以高效的开发,高效到一行代码就能让你爱不释手!

有趣:

对Python产生一个很好的初体验就是要美观。那么下面我们就来试试。

在Python里执行它,接下来你就会看见下面的东西

像这样的一个心形

字符图形还是很有趣的,有一个著名的图像叫mandelbrot。Mandelbrot图像中的每个位置都对应于公式N=x+y*i 中的一个复数,高中学过复数的都还应该有印象。每个位置用参数N来表示,它是x*x+y*y的平方根。如果这个值大于或等于2,则这个数字对应的位置值是0。如果参数N的值小于2,就把N的值改为NN-

N(N=(xx-yy-x)+(2xy-y)i)),并再次测试这个新N值。wiki百科给出的图像是这样的:

有没有很神奇

接下来就教大家用一行代码或一个Mandelbrot:

执行后会显示如图:

其高效性:

这个就很有趣了

比如说一行代码打印九九乘法表:

print ' '.join([' '.join(['%s*%s=%-2s' % (y,x,x*y) for y in range(1,x+1)]) for x in range(1,10)])

一行代码实现带交互的阶乘:

字符串排序和快速排序:

"".join((lambda x:(x.sort(),x)[1])(list(‘string’)))qsort = lambda arr: len(arr) > 1 and qsort(filter(lambda x: xarr[0], arr[1:] )) or arr

扩展:

还有一个好玩的

输入:

它打开了浏览器,展示网站上的漫画和相关内容:

我们可以把python的文件打包,做成库的形式,然后import进来,是一种偷换概念和前提的一行代码。例如,为了与windows 传输文件,再Mac上临时搭个ftp:

这当然要依赖pyftpdlib 这个库了,机器上没有,pip install pyftpdlib 就可以了。

如果一行代码中允许分号存在,那就只是牺牲可读性而已了,那就基本上无所不能。

在联网的前提下,获取公网IP地址

python -c "import socket; sock=socket.create_connection(('ns1.dnspod.net',6666)); print sock.recv(16); sock.close()"

一行代码还可以轻易写个小游戏,来模拟一下golf击球:

python -c "import math as m;a,v=eval(input());[print('%03d'%x+' '*m.floor(0.5+x*m.tan(a)-x*x/(v*m.cos(a)))+'o') for x in range(102)]"

输入角度和力量大小如(0.8,80),就能得到一条字符描画的抛物线了。

增加上while 等语句,画一个没完没了的python -c "while 1:import random;print(random.choice('╱╲'), end='')"。

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20171217A0GU5L00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券