热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Python基础(四)分行树绘制demo

1五角星绘制五角星绘制龟库turtleimportturtledefmain():主函数#计数器count1whilecount

python

1 五角星绘制


"""

五角星绘制

龟库turtle

"""

import turtle

def main():

"""

主函数

"""

# 计数器

count = 1

while count <= 5:

turtle.forward(100)

turtle.right(144)

count = count + 1

turtle.exitonclick()

if __name__ == '__main__':

main()

2 不同大小的五角星绘制


详情:https://docs.python.org/3.0/library/turtle.html

"""

不同大小五角星绘制

"""

import turtle

def draw_pentagram(size):

"""

绘制五角星

"""

# 计数器

count = 1

while count <= 5:

turtle.forward(size)

turtle.right(144)

count += 1

def main():

"""

主函数

"""

turtle.penup()

turtle.backward(200)

turtle.pendown()

turtle.pensize(2)

turtle.pencolor('red')

size = 40

while size <= 200:

# 调用函数

draw_pentagram(size)

size += 40

turtle.exitonclick()

if __name__ == '__main__':

main()

3 五角星绘制


"""

递归函数应用

"""

import turtle

def draw_recursive_pentagram(size):

"""

迭代绘制五角星

"""

# 计数器

count = 1

while count <= 5:

turtle.forward(size)

turtle.right(144)

count += 1

# 五角星绘制完成,更新参数

size += 30

if size <= 150:

draw_recursive_pentagram(size)

def main():

"""

主函数

"""

turtle.penup()

turtle.backward(200)

turtle.pendown()

turtle.pensize(2)

turtle.pencolor('blue')

size = 30

draw_recursive_pentagram(size)

turtle.exitonclick()

if __name__ == '__main__':

main()

4 分形树绘制


"""

分形树绘制

"""

import turtle

def draw_branch(branch_length):

"""

绘制分形树

"""

if branch_length > 5:

# 绘制右侧树枝

turtle.forward(branch_length)

print('向前 ', branch_length)

turtle.right(20)

print('右转 20')

draw_branch(branch_length - 15)

# 绘制左侧树枝

turtle.left(40)

print('左转 40')

draw_branch(branch_length - 15)

# 返回之前的树枝

turtle.right(20)

print('右转 20')

turtle.backward(branch_length)

print('向后 ', branch_length)

def main():

"""

主函数

"""

turtle.left(90)

turtle.penup()

turtle.backward(150)

turtle.pendown()

turtle.color('brown')

draw_branch(80)

turtle.exitonclick()

if __name__ == '__main__':

main()

5 分形树绘制


加入图中代码

感谢小象


推荐阅读
  • Python 实战:异步爬虫(协程技术)与分布式爬虫(多进程应用)深入解析
    本文将深入探讨 Python 异步爬虫和分布式爬虫的技术细节,重点介绍协程技术和多进程应用在爬虫开发中的实际应用。通过对比多进程和协程的工作原理,帮助读者理解两者在性能和资源利用上的差异,从而在实际项目中做出更合适的选择。文章还将结合具体案例,展示如何高效地实现异步和分布式爬虫,以提升数据抓取的效率和稳定性。 ... [详细]
  • 探索偶数次幂二项式系数的求和方法及其数学意义 ... [详细]
  • Java 中 ZonedDateTime 类的天数方法详解及示例代码 ... [详细]
  • 本文深入解析了Python在处理HTML过滤时的实现方法及其应用场景。通过具体实例,详细介绍了如何利用Python代码去除HTML字符串中的标签和其他无关信息,确保内容的纯净与安全。此外,文章还探讨了该技术在网页抓取、数据清洗等领域的实际应用,为开发者提供了宝贵的参考。 ... [详细]
  • PyCharm 作为 JetBrains 出品的知名集成开发环境(IDE),提供了丰富的功能和强大的工具支持,包括项目视图、代码结构视图、代码导航、语法高亮、自动补全和错误检测等。本文详细介绍了 PyCharm 的高级使用技巧和程序调试方法,旨在帮助开发者提高编码效率和调试能力。此外,还探讨了如何利用 PyCharm 的插件系统扩展其功能,以满足不同开发场景的需求。 ... [详细]
  • 本文全面解析了 gRPC 的基础知识与高级应用,从 helloworld.proto 文件入手,详细阐述了如何定义服务接口。例如,`Greeter` 服务中的 `SayHello` 方法,该方法在客户端和服务器端的消息交互中起到了关键作用。通过实例代码,读者可以深入了解 gRPC 的工作原理及其在实际项目中的应用。 ... [详细]
  • 深入解析 Python 中的 NumPy 加法函数 numpy.add() ... [详细]
  • 本文介绍了UUID(通用唯一标识符)的概念及其在JavaScript中生成Java兼容UUID的代码实现与优化技巧。UUID是一个128位的唯一标识符,广泛应用于分布式系统中以确保唯一性。文章详细探讨了如何利用JavaScript生成符合Java标准的UUID,并提供了多种优化方法,以提高生成效率和兼容性。 ... [详细]
  • 本文介绍了 Python 编程中的一些实用技巧和优化方法。首先,讨论了如何高效地交换两个变量的值,例如 `a` 和 `b` 可以通过 `a, b = b, a` 来实现。此外,文章还提供了在进行数值比较时的简洁写法,如使用 `3.14` 进行精确匹配。这些技巧不仅提高了代码的可读性,还能提升程序的运行效率。 ... [详细]
  • 在使用 `requests` 库进行 HTTP 请求时,如果遇到 `requests.exceptions.SSLError: HTTPSConnectionPool` 错误,通常是因为 SSL 证书验证失败。解决这一问题的方法包括:检查目标网站的 SSL 证书是否有效、更新本地的 CA 证书库、禁用 SSL 验证(不推荐用于生产环境)或使用自定义的 SSL 上下文。此外,确保 `requests` 库和相关依赖项已更新到最新版本,以避免潜在的安全漏洞。 ... [详细]
  • 在解决区间相关问题时,我发现自己经常缺乏有效的思维方式,即使是简单的题目也常常需要很长时间才能找到解题思路,而一旦得到提示便能迅速理解。题目要求对一个包含n个元素的数组进行操作,并给出一个参数k,具体任务是…… ... [详细]
  • 在Python多进程编程中,`multiprocessing`模块是不可或缺的工具。本文详细探讨了该模块在多进程管理中的核心原理,并通过实际代码示例进行了深入分析。文章不仅总结了常见的多进程编程技巧,还提供了解决常见问题的实用方法,帮助读者更好地理解和应用多进程编程技术。 ... [详细]
  • Java 中 print、println 和 printf 的功能与区别详解
    在 Java 中,`print` 方法将参数内容输出到控制台,并将光标停留在最后一个字符的后面。而 `println` 方法不仅显示参数内容,还会在输出结束后自动添加一个换行符,使下一次输出从新的一行开始。此外,`printf` 方法则提供了更灵活的格式化输出选项,允许用户通过指定格式字符串来控制输出的格式和样式。这三种方法各有特点,适用于不同的输出需求。 ... [详细]
  • 利用树莓派畅享落网电台音乐体验
    最近重新拾起了闲置已久的树莓派,这台小巧的开发板已经沉寂了半年多。上个月闲暇时间较多,我决定将其重新启用。恰逢落网电台进行了改版,回忆起之前在树莓派论坛上看到有人用它来播放豆瓣音乐,便萌生了同样的想法。通过一番调试,终于实现了在树莓派上流畅播放落网电台音乐的功能,带来了全新的音乐享受体验。 ... [详细]
  • 本文提出了一种高效的数据结构与算法,旨在解决超大整数(超出常规 `long` 类型范围)的加法运算问题。通过引入自定义的数据结构,该方法能够有效地存储和处理任意大小的整数,并在保证计算精度的同时,显著提升运算效率。实验结果表明,该方法在处理大规模数据时表现出色,具有较高的实用价值。 ... [详细]
author-avatar
大市低开_127
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有