苏生不惑第166 篇原创文章,将本公众号设为星标,第一工夫看最新文章。

又到了一年一度的七夕了,之前写过据说 520 你还没对象,来这里看看 ,是不还在想送什么礼物,明天分享一个有意思的动静二维码,能够用来哄女朋友开心。

二维码

二维码也称为二维条码,是指在一维条码的根底上扩大出另一维具备可读性的条码,应用黑白矩形图案示意二进制数据,被设施扫描后可获取其中所蕴含的信息。

以上来自维基百科解释 https://zh.wikipedia.org/zh-c... ,自从有了微信,二维码曾经随处可见了。

应用 Chrome 扩大能够轻易的生成二维码 https://chrome.google.com/web...

明天介绍的是基于 Python 的二维码工具 myqr 。

myqr

myqr 可生成一般二维码、带图片的艺术二维码(黑白与黑白)、动静二维码(黑白与黑白) https://github.com/sylnsfar/q... ,间接应用 pip install myqr 装置它。

这里以一个表白网页 myqr http://sushengbuhuo.gitee.io/... 生成二维码。

  myqr http://sushengbuhuo.gitee.io/love/line 16: mode: byteSucceed!Check out your 5-H QR-code: d:\download\qrcode.png

生成二维码成果:

接着用GIF生成一个动静二维码。

 myqr http://sushengbuhuo.gitee.io/love/ -p lovelove.gifIt may take a while, please wait for minutes...line 16: mode: byteSucceed!Check out your 5-H QR-code: d:\download\lovelove_qrcode.gif

生成二维码成果:

myqr http://sushengbuhuo.gitee.io/love/ -p lovelove.gif -c 黑白成果

再清晰点。

用微信扫码后显示成果,能够本人长按辨认二维码:

惋惜动图在微信里没法辨认。

还有个模板 https://a.scene.ehqxiu.cn/s/X...

微信扫描后成果:

如果你没有Python环境,这里提供了一个exe程序(公众号内回复 女朋友 获取),应用办法很简略,在exe文件同级目录创立一个文件info.txt ,在外面输出对应的参数,之后双击myqr.exe运行即可。

info.txt 文件格式如下:

words=http://sushengbuhuo.gitee.io/love/v=11p=lovelove.gifl=Qccon=1.5bri=1.3

你只须要改p前面参数 lovelove.gif(GIF文件名,就是下面那个给你小心心的GIF图,你也能够本人找一个)。

第一次应用会主动下载一些库文件,因为程序依赖 imageio

如果下载很久不动,你能够从这里本人下载到本地
https://github.com/imageio/im...,而后把这个文件放到 freeimage 目录
C:UsersxxxAppDataLocalimageiofreeimage (xxx为本人电脑用户名), 如果没有freeimage文件夹须要手动创立 。

imageio 目录还有ffmpeg目录,外面有个文件 ffmpeg-win32-v3.2.4.exe ,也能够从这里下载 https://github.com/imageio/im... ,运行myqr.exe后在本地生成动静GIF图 lovelove_qrcode.gif。

这里给我的公众号二维码也生成个GIF图,公众号的二维码能够通过微信号生成 https://open.weixin.qq.com/qr... ,解码后的地址为 http://weixin.qq.com/r/WDvM1M... ,生成成果:

上面分享段Python代码,输入❤心形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)]))

                veLoveLov           veLoveLov            eLoveLoveLoveLove   eLoveLoveLoveLove          veLoveLoveLoveLoveLoveLoveLoveLoveLoveLov         veLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveL        veLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLov        eLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLove        LoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveL        oveLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLo        veLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLov        eLoveLoveLoveLoveLoveLoveLoveLoveLoveLoveLove         oveLoveLoveLoveLoveLoveLoveLoveLoveLoveLove          eLoveLoveLoveLoveLoveLoveLoveLoveLoveLove          LoveLoveLoveLoveLoveLoveLoveLoveLoveLoveL            eLoveLoveLoveLoveLoveLoveLoveLoveLove             oveLoveLoveLoveLoveLoveLoveLoveLove              eLoveLoveLoveLoveLoveLoveLoveLove                veLoveLoveLoveLoveLoveLoveLov                  oveLoveLoveLoveLoveLoveLo                    LoveLoveLoveLoveLoveL                       LoveLoveLoveLov                          LoveLoveL                             Lov                              v

还能够自定义

import timewords = input('Please input the words you want to say!:')for item in words.split():    print('\n'.join([''.join([(item[(x-y) % len(item)] 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(12, -12, -1)]))    time.sleep(1.5)

[plt.show() for _, __, ___, plt in [(plt.plot(x, y1, color='r'), plt.plot(x, y2, color='r'), np, plt) for x, y1, y2, np, plt in [(x, 0.618*np.abs(x) - 0.8* np.sqrt(64-x**2), 0.618*np.abs(x) + 0.8* np.sqrt(64-x**2), np, plt) for x, np, plt in [(np.linspace(-8, 8, 1024), np, plt) for np, plt in [(__import__('numpy'), __import__('pylab'))]]]]]

没有装置Python,在浏览器控制台也是能够的。

console.log([...Array(30).keys()].map(u=>u-15).reverse().map(y=>[...Array(60).keys()].map(u=>u-30).map(x=>((x*0.04)**2+(y*0.1)**2-1)**3-(x*0.04)**2*(y*0.1)**3<=0?'babyiloveu'.split('').slice([(x-y)%10])[0]:' ').join('')).join('\n'))

公众号 苏生不惑