兴趣是最好的老师

枯燥的编程容易让人放弃,兴趣才是最好的老师。无论孩子还是大人,只有发现这件事情真的有趣,我们才会非常执着的去做这件事,比如打游戏。如果编程能像玩游戏一样变得有趣,我相信很多人就特别愿意去做这件事了

游戏的乐趣在于玩

把握重点,坚持其实并不难

王者荣耀游戏持续火爆了几年,其原因就是简单,有意思,每一次触碰手机,就像心底有一个声音在呼唤,玩一把,就玩一把就不玩了,结果玩着玩着就天亮了。如果学习也能够有这样的乐趣在其中,相信坚持并不是一件什么难事。

(简单回顾一下上一篇文章中的代码,如果不太懂,可以关注并阅读上一篇哦,附上地址人人都可以写的一个Python可视化小程序,带你走进编程的世界)

# 导入海龟库
import turtle
# 拿到海龟画笔
t = turtle.Pen()
# 循环100次
for x in range(100):
t.forward(x) # 往画笔箭头的方向前进的像素值,x代表具体前进多少
t.left(90) # 画笔箭头左转90度

使用画笔和颜色

首先我们来修改一下背景颜色,代码是 turtle.bgcolor("black")

我们来修改一下画笔的颜色,在这里我们首先声明了4个颜色 colors = ['purple', 'yellow', 'blue', 'red'] 这些颜色的名字就是英文的名字,在使用t.pencolor()的时候,海龟库的方法会自动帮助我们渲染成我们想要的这个颜色

完整的代码

t.pencolor(colors[x%4])

这行代码的意思是画笔使用什么颜色,其中colors[x%4]决定了到底获取哪一个颜色。x%4的意思是x的值对4取余数,最终的结果肯定是0、1、2、3其中的一个。那么也就是说从colors这个数组中获取到一种颜色。colors就是我们上边声明的包含颜色种类的数组,数组中每一个元素对应着一个角标位置,0代表purple紫色(代码中顺序的数字都是从0开始的),1代表yellow黄色,2代表bule蓝色,3代表red红色。代码运行后的结果如下:

这里我们已经完成的基本的颜色操作,下边我们换一个图形感受一下,这一次我们画4个不同颜色的圆。

与之前不同的是,这里绘画的图形变成了圆形

代码运行后的结果

看着你的画笔在不停的绘画,是不是有一种成就感和乐趣呢。

使用代码让烟花绽放吧

这里加入了画笔宽度的设置

代码运行结果

增加一个变量,一样的代码让图形产生不一样的效果

这里我们添加一个变量sides,它代表着我们想使用几种颜色和我们想要几个图像的切面,当然这个sides的值一定要小于等于6,也就是目前我们设置的颜色的个数,如果大了,代码中将会报错。上面的图就是相当于我们把sides设置成了6的结果,下面我们一一来实验一下把sides分别设置成其他的值的结果吧。

  • 将sides的值设置成5

sides等于5时代码的书写

sides等于5时代码运行的结果

  • 将sides的值设置成4

sides等于4时代码的书写

sides等于4时代码运行的结果

  • 将sides的值设置成3

sides等于3时代码的书写

sides等于3时代码运行的结果

  • 将sides的值设置成2

sides等于2时代码的书写

sides等于2时代码运行的结果

写代码,忌讳只抄不练哦,一定要记得自己练。自己写出来的那种成就感是无与伦比的,不能单纯的只看一下,这样是不好的,也是学不会的,更获得不了乐趣。想要乐趣就要动手哦。快快动手玩起来吧!

如果写代码像玩游戏一样,那我们的兴趣是否会有质的提升呢?

人人都可以写的可视化Python小程序第二篇:旋转的烟花的更多相关文章

  1. 我的微信小程序第二篇

    在上一篇<我的微信小程序第一篇(入门)>中,很多人问我什么是微信小程序,在这里我要说一下这个是我的失误啦,我默认大家都知道微信小程序,其实可能行内人士都知道小程序,好多非行内朋友可能平时不 ...

  2. 人人都可以写的一个Python可视化小程序,带你走进编程的世界

    当年的PHP号称是最好的编程语言,今天的Python就是最简单的编程语言,一个小小的程序,寥寥几行代码,带你体验一下编程的乐趣. 最简单的编程语言 今天要介绍的小工具是Python环境安装好之后,自带 ...

  3. 怎么样通过编写Python小程序来统计测试脚本的关键字

    怎么样通过编写Python小程序来统计测试脚本的关键字 通常自动化测试项目到了一定的程序,编写的测试代码自然就会很多,如果很早已经编写的测试脚本现在某些基础函数.业务函数需要修改,那么势必要找出那些引 ...

  4. Python 小程序,对文件操作及其它

    以下是自己写的几个对文件操作的小程序,里面涉及到文件操作,列表(集合,字典)的运用等.比方说,从文件里读取一行数据.分别存放于列表中,再对列表进行操作.如去掉里面的反复项.排序等操作. 常见对文件里行 ...

  5. Day1:第一个python小程序

    Day1:第一个python小程序与开发工具Pycharm 一.Hello World C:\Users\wenxh>python Python 3.6.2 (v3.6.2:5fd33b5, J ...

  6. Java可视化日历(Date类、DATe Format类、Calendar类综合运用),开发可视化日历小程序

    Java时间日期类综合运用,开发可视化日历小程序 由键盘输入指定格式的日期,打印这个月的日历 1.代码 import java.text.DateFormat; import java.text.Pa ...

  7. 微信小程序入门篇

    微信小程序入门篇: 准备工作 IDE搭建 就不多说了,没有内测码去下载个破解版吧,我用了一下,学习完全够了!IDE破解版+安装教程 图片发自简书App 知识准备 JavaScrip还是要看看的,推荐教 ...

  8. 前端微信小程序实战篇

    电商底部导航栏的制作 我想大家对电商一定不陌生,一般电商的底部导航栏有以下几个首页.分类.购物车.个人中心. app.json是用来配置page路径以及导航栏属性的,那我们要做首页.分类.购物车.个人 ...

  9. 【微信小程序】转载:微信小程序实战篇-下拉刷新与加载更多

    下拉刷新 实现下拉刷新目前能想到的有两种方式 1. 调用系统的API,系统有提供下拉刷新的API接口 当然,你可以直接在全局变量app.json的window里面配置上面这个属性,这样整个项目都允许下 ...

随机推荐

  1. halcon导出类---HDevWindowStack详解

    在HDevelop中编写好的程序在导出时,Halcon会帮我们转换成我们需要的语言,比如C++.例:HDevelop中有如下语句需要导出: dev_close_window() Halcon导出成C+ ...

  2. 关于b站爬虫的尝试(二)

    前几天学习了scrapy的框架结构和基本的使用方法,部分内容转载自:http://blog.csdn.net/qq_30242609/article/details/52810840 scrapy由编 ...

  3. 关于npm audit fix

    https://blog.csdn.net/weixin_40817115/article/details/81007774 npm audit : npm@5.10.0 & npm@6,允许 ...

  4. tarjan等

    有向图注意v在栈中时,才用dfn更新low.无向图不用判断这个. SCC和边双,都是在返回时判断low==dfn. 点双就是找割点,low(v)>=dfn(u)时,把tarjan(v)过程中放入 ...

  5. 【题解】Image Perimeters-C++

    题目Description给出一张由"x"和".“组成的矩阵.每个"x"可以向上下左右及两个斜对角进行连通,请问由某个点开始的"x”,它所连 ...

  6. React项目性能优化

    1. 使用生产版本和Fragment 1. 生产版本 确保发布的代码是生产模式下(压缩)打包的代码. 一般运行npm run build命令. 直接从webpack看配置文件,需要设置mode = ' ...

  7. chrome扩展开发实战入门之一-hellocrx

    后记:在写这篇文章时,我还没搞懂chrome扩展的基本原理.后来才明白,最简单(且实用)的扩展只需要manifest.json和content_scripts.js两个文件,无需background. ...

  8. webuploader+文件夹上传

    在Web应用系统开发中,文件上传和下载功能是非常常用的功能,今天来讲一下JavaWeb中的文件上传和下载功能的实现. 先说下要求: PC端全平台支持,要求支持Windows,Mac,Linux 支持所 ...

  9. P1484 种树——数据结构优先队列

    种了一下午的树,终于给搞明白了((多谢各位大神的题解)(题解就不能讲清楚点吗(看不见看不见))): 你有k个树,你可以种在一条直线上,每个位置都有一个价值,如果你把树种在这里就可以获得这个价值,但是条 ...

  10. Python3.5以上Celery4.2.1启动报错:ImportError: cannot import name 'LRUCache' from 'kombu.utils.functional'

    服务器:Centos7 Python版本:Python 3.7.0 Celery版本:4.2.1 Python3.5以上,OrderDict不允许在迭代过程中进行修改,导致LRUCache.updat ...