好玩的 Python 代码

简介: 好玩的 Python 代码

0、图片转字符
from PIL import Image
IMG = 'yangmingblog.cn.jpg' #设置图片文件
WIDTH = 150 #设置字符画的宽
HEIGHT = 80 #设置字符画的高
OUTPUT = 'output5.txt' #设置存放字符画的文本文件
asciichar = list("$@B%8&WM#*oahkbdpqwmZO0QLCJUYXzcvunxrjft/|()1{}[]?-+~<>i!lI;:,\"^`'. ") #设置显示的字符集
def get_char(r,g,b,alpha = 256):
if alpha == 0:
return ' '
length = len(ascii_char)
gray = int(0.2126 r + 0.7152 g + 0.0722 b)
unit = (255.0 + 1)/length
return ascii_char[int(gray/unit)]
if name == 'main':
im = Image.open(IMG)
im = im.resize((WIDTH,HEIGHT), Image.NEAREST)
txt = ""
for i in range(HEIGHT):
for j in range(WIDTH):
txt += get_char(
im.getpixel((j,i)))
txt += '\n'
print(txt)
with open(OUTPUT,'w') as f:
f.write(txt)
转换结果对比:
//代码效果参考:http://www.ezhiqi.com/zx/art_1146.html

1、一行代码的魅力
只需要一个print语句,就可以输出一个大大的心形:

print('\n'.join([''.join([('lovelovelove'[(x-y)%12]if((x0.05)**2+(y0.1)2-1)3-(x0.05)**2(y0.1)*3<=0 else' ')for x in range(-30,30)])for y in range(15,-15,-1)]))
看下效果:

其实Python的一行代码还可以干很多事,例如,打印九九乘法表:

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

一行代码计算出1-1000之间的素数:

print((i for i in range(2, 1000) if all(tuple(i%j for j in range(2, int(i*.5))))))
一行代码可以输出前100项斐波那契数列的值:

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 xrange(100) ]]
还有很多。。。

2、动态二维码制作
只需两行代码,就可以拥有一个动态二维码。

from MyQR import myqr
//代码效果参考:http://www.ezhiqi.com/zx/art_522.html

因为这里不能放二维码,所以就不看效果了。

3、制作专属词云
只需四行代码,就可以生成专属词云。

from wordcloud import WordCloud
wc = WordCloud() # 创建词云对象
wc.generate('weixin gongzhonghao CoderAdai yangmingblog.cn') # 生成词云
wc.to_file('cy.png') # 保存词云
来看下效果:

//代码效果参考:http://www.ezhiqi.com/zx/art_162.html

4、绘制多边形线条
只需5行代码。

import turtle
t = turtle.Pen()
for x in range(360):
t.forward(x)
t.left(59)
5、好玩的开源项目
在GitHub上,可以通过搜索spider,找到关于Python的爬虫项目,里边只有你想不到,没有Python做不到的。

相关文章
|
22天前
|
存储 算法 调度
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
【复现】【遗传算法】考虑储能和可再生能源消纳责任制的售电公司购售电策略(Python代码实现)
128 26
|
25天前
|
测试技术 开发者 Python
Python单元测试入门:3个核心断言方法,帮你快速定位代码bug
本文介绍Python单元测试基础,详解`unittest`框架中的三大核心断言方法:`assertEqual`验证值相等,`assertTrue`和`assertFalse`判断条件真假。通过实例演示其用法,帮助开发者自动化检测代码逻辑,提升测试效率与可靠性。
164 1
|
28天前
|
机器学习/深度学习 算法 调度
基于多动作深度强化学习的柔性车间调度研究(Python代码实现)
基于多动作深度强化学习的柔性车间调度研究(Python代码实现)
111 1
|
11天前
|
测试技术 Python
Python装饰器:为你的代码施展“魔法”
Python装饰器:为你的代码施展“魔法”
196 100
|
11天前
|
开发者 Python
Python列表推导式:一行代码的艺术与力量
Python列表推导式:一行代码的艺术与力量
202 95
|
19天前
|
Python
Python的简洁之道:5个让代码更优雅的技巧
Python的简洁之道:5个让代码更优雅的技巧
174 104
|
19天前
|
开发者 Python
Python神技:用列表推导式让你的代码更优雅
Python神技:用列表推导式让你的代码更优雅
304 99
|
11天前
|
缓存 Python
Python装饰器:为你的代码施展“魔法
Python装饰器:为你的代码施展“魔法
129 88
|
26天前
|
IDE 开发工具 开发者
Python类型注解:提升代码可读性与健壮性
Python类型注解:提升代码可读性与健壮性
198 102
|
16天前
|
监控 机器人 编译器
如何将python代码打包成exe文件---PyInstaller打包之神
PyInstaller可将Python程序打包为独立可执行文件,无需用户安装Python环境。它自动分析代码依赖,整合解释器、库及资源,支持一键生成exe,方便分发。使用pip安装后,通过简单命令即可完成打包,适合各类项目部署。

推荐镜像

更多