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

简介:

本节书摘来自异步社区《教孩子学编程(Python语言版)》一书中的第2章,第2.7节,作者[美]Bryson Payne,李军 译,更多章节内容可以访问云栖社区“异步社区”公众号查看。

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所示,看上去像是一个几何玩具,或者是用彩色的橡皮筋制作的球体。


<a href=https://yqfile.alicdn.com/38d067b7d32e2e2bf4396753fdea9828e98de468.png" >
我们把这个新的版本保存为RubberBandBall.py,或者访问http://www.nostarch.com/teachkids/ 并且在Chapter2的源代码中找到该程序。
相关文章
|
3月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
321 102
|
3月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
348 104
|
3月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
279 103
|
3月前
|
机器学习/深度学习 人工智能 数据挖掘
Python:现代编程的首选语言
Python:现代编程的首选语言
207 82
|
2月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
230 3
|
2月前
|
数据处理 Python
Python编程:类型转换与输入输出
本教程介绍Python中输入输出与类型转换的基础知识,涵盖input()和print()的使用,int()、float()等类型转换方法,并通过综合示例演示数据处理、错误处理及格式化输出,助你掌握核心编程技能。
484 3
|
2月前
|
并行计算 安全 计算机视觉
Python多进程编程:用multiprocessing突破GIL限制
Python中GIL限制多线程性能,尤其在CPU密集型任务中。`multiprocessing`模块通过创建独立进程,绕过GIL,实现真正的并行计算。它支持进程池、队列、管道、共享内存和同步机制,适用于科学计算、图像处理等场景。相比多线程,多进程更适合利用多核优势,虽有较高内存开销,但能显著提升性能。合理使用进程池与通信机制,可最大化效率。
310 3
|
2月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
323 0
|
3月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的多面手
Python:现代编程的多面手
93 0
|
3月前
|
存储 人工智能 算法
Python实现简易成语接龙小游戏:从零开始的趣味编程实践
本项目将中国传统文化与编程思维相结合,通过Python实现成语接龙游戏,涵盖数据结构、算法设计与简单AI逻辑,帮助学习者在趣味实践中掌握编程技能。
407 0

推荐镜像

更多