python简单好玩的编程代码,python编写有趣的代码

本篇文章给大家谈谈python简单有趣的程序源代码,以及python简单好玩的编程代码,希望对各位有所帮助,不要忘了收藏本站喔。

Source code download: 本文相关源码

Python能干的事太多了,这里分享一下我个人觉得比较有趣的几个小项目。每一个都超实用,拿去就能运行的那种!

0、图片转字符

from PIL import Image
IMG = 'yangmingblog.cn.jpg' #设置图片文件
WIDTH = 150 #设置字符画的宽
HEIGHT = 80 #设置字符画的高
OUTPUT = 'output5.txt'  #设置存放字符画的文本文件
ascii_char = 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)

转换结果对比:

 1、一行代码的魅力

只需要一个print语句,就可以输出一个大大的心形:

print('\n'.join([''.join([('lovelovelove'[(x-y)%12]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(15,-15,-1)]))

看下效果:

作者:阿呆
链接:https://www.zhihu.com/question/517677437/answer/2416389646
来源:知乎
著作权归作者所有python自动化运维工资。商业转载请联系作者获得授权,非商业转载请注明出处。
 

其实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
myqr.run(words='https://yangmingblog.cn',picture='Sources/gakki.gif',save_name='qr4.png',colorized=True)

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

3、制作专属词云

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

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

来看下效果:

4、绘制多边形线条

只需5行代码。

import turtle
t = turtle.Pen()
for x in range(360):
    t.forward(x)
    t.left(59)

5、好玩的开源项目

在GitHub上,可以通过搜索spider,找到关于Python的爬虫项目,里边只有你想不到,没有Python做不到的。

这里简单列举几个。

1、Python spider

2、awesome-spider

好了,我是雨雨,一个不务正业的程序员,如果感到对有所帮助,不妨留个小赞吧~

  • 4
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值