《教孩子学编程(Python语言版)》——2.7 编程挑战

2.7 编程挑战

尝试这些挑战以练习我们在本章中所学习的知识(如果遇到困难,可以访问http://www.nostarch.com/teachkids/ 寻找示例解答)。

#1:修改边数

在ColorSpiral.py程序中,我们使用了一个变量sides,但是我们并没有改变它或修改其值,只是再次编辑、保存和运行程序。我们尝试将sides的值改为另一个数字,例如5,保存并运行程序,看看这会对绘制有何影响;现在,试一试4、3、2甚至是1。现在,我们在程序的第6行,向颜色列表中添加两种或更多的颜色,颜色名用引号括起来,用逗号隔开。我们可以增加sides的值,来使用这些新的颜色,尝试一下8或者10甚至更大。

#2:有多少边

如果想要在程序运行的时候由用户来决定边数,我们该怎么做呢?使用我们在第1章中学习的内容,可以让用户输入边数并且将其存储到sides变量中。唯一额外的步骤是,计算(evaluate)用户所输入的数字。我们可以使用eval()函数得到用户输入的数字,如下所示。

sides = eval(input(“Enter a number of sides between 2 and 6: “))

我们使用前面这一行,替换掉ColorSpiral.py中的sides = 6这一行。新的程序将会问用户想要看到有多少个边。然后,程序将绘制用户所要求的形状。尝试一下!

#3:橡皮筋球体

我们尝试将ColorSpiral.py程序修改为一个更大的角度,而且通过在绘制循环的末尾添加一个额外的转向来扭曲形状。我们在for循环的末尾添加诸如t.left(90)的一行,使得角度更加尖锐(记住缩进,或者说留下空格,以保证该语句位于循环之中)。结果如图2-9所示,看上去像是一个几何玩具,或者是用彩色的橡皮筋制作的球体。

https://yqfile.alicdn.com/38d067b7d32e2e2bf4396753fdea9828e98de468.png" >

我们把这个新的版本保存为RubberBandBall.py,或者访问http://www.nostarch.com/teachkids/ 并且在Chapter2的源代码中找到该程序。
时间: 2024-07-30 19:44:04

《教孩子学编程(Python语言版)》——2.7 编程挑战的相关文章

《趣学JavaScript——教孩子学编程》——导读

前言 趣学JavaScript--教孩子学编程 欢迎阅读本书!在本书中,你将学习用一种Web语言(JavaScript)来编写程序.但是更重要的是,你将成为一名程序员,即不仅会使用计算机而且会控制计算机的人.一旦学会了编程,你可以让计算机遵从你的意愿去做你想做的任何事情. JavaScript是一门不错的语言,值得学习,因为它随处可用.诸如Chrome.Firefox和Internet Explorer这样的Web浏览器,都使用JavaScript.借助JavaScript的强大功能,Web程序

《趣学JavaScript——教孩子学编程》——第1章 认识JavaScript1.1 认识JavaScript

第1章 认识JavaScript 趣学JavaScript--教孩子学编程 计算机是功能强大到令人难以置信的工具,它能够执行很多惊人的操作,例如,下国际象棋比赛.提供数以千计的Web页面,或者在数秒钟之内执行数百万次复杂的计算.但是,深入去看,计算机实际上是很傻的.计算机只能够执行人类告诉它的事情.我们使用计算机程序告诉计算机采取什么动作,而程序只是令计算机遵从的指令集合.没有程序的话,计算机什么也干不了. 1.1 认识JavaScript 更糟糕的是,计算机不能理解英语或任何人类语言.计算机程

《趣学JavaScript——教孩子学编程》——第2章 类型与变量2.1 数字和运算符

第2章 类型与变量 趣学JavaScript--教孩子学编程 编程其实就是操作数据,可什么是数据呢?数据就是我们保存在计算机程序中的信息.例如,你的名字就是一条数据,年龄也是一条数据.你头发的颜色,有几个兄弟姐妹,住在什么地方,是男生还是女生--所有这些都是数据. JavaScript中有3种基本的数据类型:数字.字符串和Boolean(布尔类型).number用来表示数字.例如,年龄可以用一个number表示,身高也可以用number表示.JavaScript中的数字如下所示: 字符串用来表示

iOS Socket编程-C语言版(UDP)

iOS Socket编程-C语言版(UDP) 本篇文章为总结使用C语言的api来完成UDP通信的基本功能,如果您对Socket不了解,请先阅读上一篇理论知识: iOS Socket理论知识 如果文章中有任何您认为不正确的或者有疑问的,请联系笔者! 谢谢! 支持原创,请阅读原文 1. UDP Socket编程 先讲一讲UDP编程,因为比TCP要简单多了.首先,我们需要明白UDP是用户数据报协议,英文名为User Datagram Protocol,它是面向无连接的. 注意:Socket通信一定有要

iOS Socket编程-C语言版(TCP)

iOS Socket编程-C语言版(TCP) 本篇文章为总结使用C语言的api来完成TCP通信的基本功能,如果您对Socket不了解,请先阅读上一篇理论知识: iOS Socket理论知识 如果您还想学习UDP编程,请阅读iOS Socket编程-C语言版(UDP) 如果文章中有任何您认为不正确的或者有疑问的,请联系笔者! 谢谢! 支持原创,请阅读原文 1. TCP Socket编程 TCP是面向连接的,安全可靠的传输层协议.TCP的程序基本框架设计图: 注意:Socket通信一定有要服务端和客

《教孩子学编程(Python语言版)》——第1章 Python 基础—认识环境 1.1 认识Python

第1章 Python 基础-认识环境 如今,几乎任何东西之中都有一个计算机,例如电话.汽车.手表.电子游戏机.跑步机.贺卡或者机器人.计算机编程或编码,就是要告诉计算机如何执行一项任务,因此,理解如何编写代码,可以将计算机的能力控制在你的指间. 计算机程序,也叫作应用程序(applications或App),它告诉计算机做什么.Web App可以告诉计算机如何记录你喜欢的音乐:游戏App告诉计算机如何用逼真的图像显示一个古代的战场:一个简单的App可以让计算机绘制出如图1-1所示的类似六边形的.

《教孩子学编程(Python语言版)》——导读

前 言 什么是编程,为什么编程很适合孩子 计算机编程是每个孩子都应该学习的一项重要技能.我们使用计算机解决问题,玩游戏,帮助我们更有效地工作,执行重复性的任务,存储和查找信息,创建新的内容,同时与我们的朋友和世界联系.理解如何编写代码,将会把这一切力量付诸于我们的指尖. 每个人都能够学习编程,这就像是求解一个谜题或一个谜语.你可以应用逻辑,尝试一种解决方案,更多地试验一下,然后解决问题.开始学习编程的时机就是现在!我们处在一个前所未有的历史时期,在此之前,人们不可能像我们今天一样,通过计算机每天

《教孩子学编程(Python语言版)》——第2章 海龟作图—用Python 绘图 2.1 第一个海龟程序

第2章 海龟作图-用Python 绘图 在本章中,我们将编写简短的.简单的程序来创建漂亮的.复杂的视觉效果.为了做到这一点,我们可以使用海龟作图软件.在海龟作图中,我们可以编写指令让一个虚拟的(想象中的)海龟在屏幕上来回移动.这个海龟带着一只钢笔,我们可以让海龟无论移动到哪都使用这只钢笔来绘制线条.通过编写代码,以各种很酷的模式移动海龟,我们可以绘制出令人惊奇的图片. 使用海龟作图,我们不仅能够只用几行代码就创建出令人印象深刻的视觉效果,而且还可以跟随海龟看看每行代码如何影响到它的移动.这能够帮

《教孩子学编程(Python语言版)》——1.4 本章小结

1.4 本章小结 学习编写代码就像是学习走迷宫.猜谜语或者玩脑筋急转弯.你从一个问题开始,应用所知道的信息,同时一路获知新的东西.当你完成的时候,你锻炼了大脑并且解决了问题.希望你能够乐在其中. 在本章中,我们解决第一个主要的问题:在计算机上安装了Python编程语言,以便能够开始编写代码.这很容易,我们只需要下载文件,安装文件并运行它. 在后面的各章中,我们将学习如何使用代码解决问题.我们首先从一个简单的可视化的谜题开始,例如在计算机屏幕上(或者平板电脑或手机的屏幕上)绘制形状,然后,搞清楚如

《教孩子学编程(Python语言版)》——2.6 本章小结

2.6 本章小结 在本章中,我们使用Turtle库的工具绘制了令人印象深刻的彩色形状.我们使用import命令把这个库导入到自己的程序中,同时了解到,以这种方式来重用代码是编程的最强大的功能之一.一旦编写了有用的内容,或者借用某些人慷慨分享的代码,我们不仅能够节省时间,而且能够使用这些导入的代码做全新的事情. 我们还介绍了程序中像x和sides这样的变量.这些变量存储或记住一个数字或值,以便我们能够在程序中多次使用它,甚至修改其值.在第3章中,我们将学习变量的作用以及Python如何能够帮助你完