安装python后如何画画_在网页上用画画的方式学Python

林赛雅 谢作如

毫无疑问,Python已经成为当前中小学最热门的编程语言。据了解,普通高中信息技术的五套新教材,全部选择了Python。当孩子们具备了以Scratch、Blockly或者扣叮为代表的图形化编程基础后,在代码编程方面,Python成为最好的选择之一。

Logo语言是MIT著名计算机教授西蒙·派珀特专为儿童设计的编程语言,曾经风靡全球,直到最近十年才慢慢被Scratch所替代。有人开发了一个叫Turtle的Python库,继承了Logo语言的所有功能。笔者希望能够借助画画的方式,让初学者熟悉Python语法,但是Python命令行形式的编程界面总不够友好。直到有一天发现了Jupyter和Ipyturtle,实现了在网页上一边画画,一边学习Python的愿望。

● 编程环境搭建

1.Jupyter简介和安裝

Jupyter的全称为Jupyter Notebook(此前被称为IPython NoteBook),是一个交互式笔记本,支持运行40多种编程语言。Jupyter的本质是一个Web应用程序,便于创建和共享程序文档,支持实时代码、数学方程、可视化和MarkDown。很多人喜欢直接在Jupyter上写代码,并同步记录学习心得,这样的学习笔记实际上就是一个很好的教程。

除了通过Jupyter,还可以通过Web页面运行Python代码和系统命令。开源硬件虚谷号上,就集成了Jupyter,通过访问Jupyter页面,就能用无线的模式来给虚谷号编程,也可以管理虚谷号上的种种应用。如果没有虚谷号,建议安装Winpython或者Anaconda,二者都集成了Jupyter。如果自己对Python比较熟悉,也可以自行安装。

2.Ipyturtle简介和安装

顾名思义,Ipyturtle是Jupyter的插件,用于在Jupyter上模拟海龟,即Jupyter上的Turtle画画。Ipyturtle的语法和Turtle也基本一致,仅有几个常用的动词。例如,forward为前进,back为后退,right和left分别表示右转和左转。访问官方开源网站,可以得到具体的文档资料。

Ipyturtle的Github地址:https://github.com/gkvoelkl/ipython-Turtle-widget。

和其他的Python库类似,Ipyturtle可以用pip或者pip3命令安装,但首先需要安装Jupyter。安装命令如下:

pip install Ipyturtle Jupyter nbextension enable --py --sys-prefix Ipyturtle

Jupyter安装好后,可以视为计算机上安装了一个默认端口为8888的Web服务。在命令行中输入Jupyter,即可启动这一服务。

Jupyter的访问地址为:http://[ip地址]:8888,如果访问的是本机,可以直接用127.0.0.1作为IP地址。

● 开始画画吧

1.显示我的画布

在Jupyter的页面中新建一个Python3文件,这时将新建一个笔记。在笔记的文本框中输入如图1所示的代码,然后点击“运行”,看一看,网页上是不是出现了一张带箭头的图片(如图2)。注意:如果网页没有出现图片,请使用谷歌浏览器访问Jupyter。

然后,在新的文本框中输入“t.forward(60)”,看看画面有什么变化,是不是出现了一条直线(如图3)。

这里对Ipyturtle的常见语法做简单介绍。

(1)“from Ipyturtle import Turtle”的作用是在Ipyturtle库中导入Turtle模块。

(2)“t=Turtle()”表示建立Turtle对象,名称是t。直接输入t,网页上就能显示画布。“t.close()”表示关闭画布。“t=Turtle(fixed=False, width=100, height=100)”表示建立一个宽度和高度为100像素的画布。

(3)“t.forward(60)”表示前进60,“t.back(20)”表示后退20,单位是像素。

(4)“right(10)”和“left(10)”表示右转和左转10,单位是角度。

怎么样?命令是不是很简单?

2.画一个矩形

画一个矩形,其实只需要控制箭头右转三次90度,画四条对称的线。在文本框中输入如图4所示的代码,看看是不是动态画出了一个矩形?

用如图5所示的代码,可以画出三角形、圆形等。

在画圆形的时候,我们就用到了循环语句,不然就得写360行同样的语句,初学者很快就体会到循环语句的重要性。需要特别强调的是,画布可以另存为图片。如果熟悉了语法,完全可以用这种方式来画一些常见的图形。

● 写一个交互式笔记

Jupyter的最大优势在于可以编写交互式的笔记。将输入代码的文本框的类型(默认为“代码”)换成“标记”,即可写上说明性文字。Jupyter的文字支持标准的MarkDown语法,能够输入段落、列表、超链接和数学公式等不同格式的文本。MarkDown是程序员常用的一种纯文本格式的标记语言,通过简单的标记语法,可以使普通文本内容具有一定的格式。

我们把探索、测试Ipyturtle语法的过程,即在网页上画画的过程,一步一步记录下来,在代码旁边增加说明性文字,这就完成了一个交互式笔记(如图6)。这既是学习笔记,也是一个支持在线运行代码的交互课件。

将自己编写的笔记保存为.ipynb格式,就可以分享给其他人使用。开源硬件虚谷号上已经整合了笔者写的各种交互式编程笔记,打开无线模式即可使用。

西蒙·派珀特认为,计算机是一种新的表达工具,用Logo语言可以帮助孩子们用更好的方式学习数学和编程。在笔者看来,用画画的形式来熟悉Python语法,是很不错的选择。尤其是在虚谷号和Jupyter的支持下,打开浏览器就能学习,降低了学习门槛。Ipyturtle的功能虽然很简单,但如果结合网络爬虫、百度AI和板载Arduino等功能,画画会更加有趣。例如,用画图的形式呈现各种传感器数据,让物联网数据可视化,能更好地激发学生的学习兴趣。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值