• 从Scratch到Python——Python生成二维码


    # Python利用pyqrcode模块生成二维码
    import pyqrcode
    import sys
    
    number = pyqrcode.create('从Scratch到Python——Python生成二维码',encoding='utf8')
    number.png('d:\a.png',50)
    

    上述代码生成的二维码

    微信扫描结果

    我相信,将来Python一定会走进中小学生的教材,像Scratch一样成为编程入门语言;至于人手一把游标卡尺,我觉得是无脑黑,毕竟学汉字还要用个四线方格呢,设计这个针对Python的练习本可比作文本容易多了.
    我强烈的相信Python一定会走进中小学的教材,为此我一直在努力.

    Python有什么好?

    试图向没有接触Python的人解释Python的好处是比较困难的,对于Python Turtle来说,跟Logo语言辣么相似,学logo就好了,干嘛学习Python呢?
    我竟然无言以对,毕竟Python的种种强大对小学生来说是感知不到的.

    今天看自己安装的Python模块的文档,无意中发现了竟然安装了pyqrcode模块,跟二维码相关的嘛,于是尝试了一下,抛开两行导入,只要两行就可以生成一个二维码真的超简单的.

    # Python利用pyqrcode模块生成二维码
    import pyqrcode
    import sys
    
    number = pyqrcode.create('从Scratch到Python——Python生成二维码',encoding='utf8')
    number.png('d:\a.png',50)
    

    实际上这段代码是很简单的,但是呢可以跟Python turtle很好的结合起来.

    logo语言在国外编程教育历史中曾经扮演过很重要的角色,然而其历史地位已经被Scratch所取代,采用兼容Logo语言的Python turtle绝不是为了开倒车,利用Python turtle掌握编程基本概念之后,可以利用Python的简洁强大开发出属于自己的小工具.

    Scratch虽然很强大,scratch利用自带的绘图功能也并非不能绘制二维码,只是对于小孩子来说难以理解,而Python因为有着丰富的代码库,所以只需要引入对应的库,然后调用相关的指令就好了.

    我们知道Scratch中有询问命令,同时可以获取到询问的回答,在Python turtle中也有类似的功能.

    那么我们就可以用Python turtle构建一个可以生成包含指定文字的二维码.

    如今,二维码在日常生活中随处可见,能够自己生成二维码真是件让人开心的事情呢.

    这两天一直在分析Python turtle的源代码,也增加了许多功能,当然因为Tkinter的限制,获取鼠标的坐标需要很多复杂的工作;有人说Python turtle能做的Pygame,pyglet,pyqt都能做,为什么非得用Python turtle呢,因为这是最简单用文本编程构建图形化界面的工具,门槛很低,没有的功能二次开发加上就是了.

    但是这种能够跟交互式命令行完美兼容的特点,是pygame也好,pyglet也好,pyqt也好,所不具备的,而这就是scratch成功的低门槛的特性,虽然Python已经足够简单易学,但是对于小孩子来说,尽量降低学习成本是有必要的,尽量符合孩子的认知特点.

    同样scratch还具有个性化多样性的特点,允许使用自己的图像,照片,绘制的图画,这对Python来说完全不是问题,况且Python有各领域丰富的代码库,来完成各种稀奇古怪的任务.

    至于scratch的无极限,据说有人用scratch来做光线追踪程序,这不是不可以的,这个特点强调随着对scratch掌握程度的加深可以开发出复杂的作品,但是scratch本身的性能是有限制的,这点在官方的paper中也有所体现;而Python完全不存在这个问题,只有你想不到,Python能够完成的任务超乎你的想象.

    以上是我坚定不移的推崇Python的原因中的一些,欢迎大家留言,探讨.

    对了,之前有老师留言问,Python能否跟arduino交互,可以的.跟scratch类似,写入一个固件,然后Python就可以跟arduino互动的,但是不能编译,这点比较遗憾;其实硬要编译也是可以的,不过需要把Python转换成c语言的代码,然后调用相关的命令上传程序到arduino,也有人在做这方面的工作,初期的话,我们使用Python+固件的方式交互比较好一些.后面会介绍

  • 相关阅读:
    SpringBoot入门
    Maven相关
    IO流之RandomAccessFile和File
    javaSE之运行时异常和编译时异常
    Map.Entry的由来和使用
    Oracle常用基础语法(未完待补和操作)
    Oracle存储过程和存储函数
    论文阅读笔记(三十七)【AAAI2020】:Frame-Guided Region-Aligned Representation for Video Person Re-identification
    论文阅读笔记(三十六)【AAAI2020】:Relation-Guided Spatial Attention and Temporal Refinement for Video-based Person Re-Identification
    论文阅读笔记(三十五)【CVPR2019】:Perceive Where to Focus: Learning Visibility-aware Part-level Features for Partial Person Re-identification
  • 原文地址:https://www.cnblogs.com/asworm/p/7045495.html
Copyright © 2020-2023  润新知