《python程序语言设计》2018版第5章第50题利用turtle编程显示三角形图案

2024.06.18
05.50.01version

在这里插入图片描述

首先我觉得还是应该现从简单阵列来进行。非常简单。顺便回忆一下我3月份做的5.19题里那些淘气的数列

代码成功

#将i从10设计成12打印的毕竟好看
for i in range(1,12):#这这里给结尾的i+2效果并不好看for j in range(1,i):print(j,end=" ")print()

请添加图片描述
请添加图片描述

这个是过去用str和for演出的成果,现在来实际用turtle吧

先确定turtle的x,y坐标。给他们分别建立变量。

a_x = 18
a_y = 18

2024.06.25
为了排15分钟的课。写教案,写ppt 大脑宕机
现在强迫自己别玩游戏。
回来弄这个。

a_x = 18
a_y = 18turtle.penup()
turtle.goto(a_x, a_y)for i in range(1, 12):aDx = a_x + (i * 18)aDy = a_y + (i * 18)turtle.goto(aDx, -aDy)for j in range(1, i):# 在y处用正号和负号不断求索。很有意思turtle.goto(aDx, -(a_y + (j * 18)))turtle.write("{:3d}".format(j))
turtle.done()

我发现你如果在这两句间进行正负号就会得出不同的阵列,但就不是我想要的

    turtle.goto(aDx, -aDy)turtle.goto(aDx, -(a_y + (j * 18)))

在这里插入图片描述
在这里插入图片描述

24.06.26 success code

a_x = 18
a_y = 18turtle.penup()
turtle.goto(a_x, a_y)for i in range(1, 12):aDx = a_x + (i * 18)aDy = a_y + (i * 18)turtle.goto(aDx, aDy)for j in range(1, i):turtle.goto(-aDx, -(a_y + (j * 18)))turtle.write("{:3d}".format(j))
turtle.done()

在这里插入图片描述


2024.7.2
I’m go.
2024.7.3
比较偷懒。
现在我们来一步步的解答

第一以现在的代码我成功的做到了10个序列从
我发现嵌套的循环j它现在的打印方法应该是可以的。
所以真正我从i这个层次来考虑问题
经过了几次尝试都是失败
我是不是应该具象化一下,我的这些点到底是在什么位置

for i in range(1, 12):aDx = a_x + (i * 18)aDy = a_y + (i * 18)# 我加一个显示点位置的代码看一下他们到底再那里。turtle.goto(aDx, aDy)turtle.dot(2, "red")

此代码打出红色点并没有像我想的那样进行阵列一样的打印看来问题出在这里

经过我的努力设计了两行来显示我到底那里打印有问题,
但是pycharm的整理代码功能。让我的测试出现了一些小问题。
就是当我的代码写的不规范,或者进行代码整理。他总是将最后两句话
放到i循环中
造成打印结果好几次不动。让我很迷糊。
后来发现原来是代码的缩进被系统自动帮忙篡改了。

for i in range(1, 12):aDx = a_x + (i * 18)aDy = a_y + (i * 18)# 我加一个显示点位置的代码看一下他们到底再那里。turtle.goto(aDx, -aDy)#这两段用来看看我外层循环的效果turtle.dot(2, "red")turtle.write("{:3d}".format(i))turtle.hideturtle()turtle.done()

在这里插入图片描述

定住了。为什么。我百思不得其解,我认为我的外层循环有问题。

后来!我才发现大家仔细看这段代码的最后两行,他们怎么跑到i循环里了呢? 哦pycharm这个哥们自动帮我整理了代码。结果两段进去了。自然就循环到了一遍自然就停止了。

	turtle.hideturtle()turtle.done()

好了须经一场,重新测试。看来i循环设计还不错

在这里插入图片描述

下面是正确代码,谢谢大家a_x = 18
a_y = 18turtle.penup()
turtle.goto(a_x, a_y)for i in range(1, 12):aDx = a_x + (i * 18)aDy = a_y + (i * 18)turtle.goto(aDx, -aDy)for j in range(1, i):turtle.goto((j * 18), -aDy)turtle.write("{:3d}".format(j))turtle.hideturtle()
turtle.done()

在这里插入图片描述

祝大家学习愉快,多多点赞,一键三联。爱大家

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/38977.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【深度学习】Transformer

李宏毅深度学习笔记 https://blog.csdn.net/Tink1995/article/details/105080033 https://blog.csdn.net/leonardotu/article/details/135726696 https://blog.csdn.net/u012856866/article/details/129790077 Transformer 是一个基于自注意力的序列到序列模型,与基…

软件测试与质量保证 | 云班课选择题库

目录 第1章课后习题 第2章课后习题 第3章课后习题 第4章课后习题 第5章课后习题 第6章课后习题 第7章课后习题 第8章课后习题 第9章课后习题 第10章课后习题 第11章课后习题 第12章课后习题 第13章 测试相关未分类习题 第1章课后习题 1. 与质量相关的概念包括 &a…

可充电纽扣电池ML2032充电电路设计

如图,可充电纽扣电池ML2032充电电路设计。 图中二极管是为了防止电流倒灌, 电阻分压出3.66v,再减掉二极管压降(约0.4v)得3.26V,加在电池正负极充电。 随着电池电量的积累,充电电流逐步减小,极限…

什么样的企业适合SD-WAN网络专线?

SD-WAN(Software-Defined Wide Area Network,软件定义广域网)是一种网络技术,它利用软件定义的方式管理和控制广域网(WAN),旨在提高网络效率、降低成本并简化网络管理。以下是适合采用SD-WAN网络…

服务器之BIOS基础知识总结

1.BIOS是什么? BIOS全称Basic Input Output System,即基本输入输出系统,是固化在服务器主板的专用ROM上,加载在服务器硬件系统上最基本的运行程序,它位于服务器硬件和OS之间,在服务器启动过程中首先运行&am…

HUAWEI MPLS 静态配置和动态LDP配置

MPLS(Multi-Protocol Label Switching,多协议标签交换技术)技术的出现,极大地推动了互联网的发展和应用。例如:利用MPLS技术,可以有效而灵活地部署VPN(Virtual Private Network,虚拟专用网),TE(Traffic Eng…

pdf怎么拆分成一页一页?4种拆分方法分享

在日常的办公学习中,PDF文档因其跨平台、易阅读、不易篡改等特性,成为我们工作和学习中不可或缺的一部分。然而,当我们需要对PDF进行编辑、打印或分享时,有时需要将整个PDF文档拆分成一页一页的单独文件。那么,如何高效…

2024 AIGC 技术创新应用研讨会暨数字造型设计师高级研修班通知

尊敬的老师、领导您好! 为深入响应国家关于教育综合改革的战略部署,深化职业教育、高等教育改革,发挥企业主体重要作用,促进人才培养供给侧和产业需求侧结构要素全方位融合,充分把握人工智能创意式生成(AIGC)技术在教育领域的发展…

初学Spring之 IOC 控制反转

Spring 是一个轻量级的控制反转&#xff08;IOC&#xff09;和面向切面编程&#xff08;AOP&#xff09;的框架 导入 jar 包&#xff1a;spring-webmvc、spring-jdbc <dependency><groupId>org.springframework</groupId><artifactId>spring-webmvc&l…

HTTPS数字证书验证论述

1 概述 网络请求方式通常分为两种&#xff0c;分别是HTTP请求和HTTPS请求&#xff0c;其中HTTP的传输属于明文传输&#xff0c;在传输的过程中容易被人截取并且偷窥其中的内容&#xff0c;而HTTPS是一种在HTTP的基础上加了SSL/TLS层&#xff08;安全套接层&#xff09;的安全的…

Ubuntu24.04 Isaacgym的安装

教程1 教程2 教程3 1.下载压缩包 link 2. 解压 tar -xvf IsaacGym_Preview_4_Package.tar.gz核心教程在 isaacgym/docs/install.html下 3. 从源码安装 Ubuntu24.04还需首先进入虚拟环境 python -m venv myenv # 创建虚拟环境&#xff0c;已有可跳过 source myenv/bin/a…

Redis持久化详解

【关闭文件、AOF 刷盘、释放内存这三个任务都有各自的任务队列】所以不是单线程 Redis有两种持久化方案&#xff1a; RDB持久化 AOF持久化 基于Redis集群解决单机Redis存在的问题 【Redis是单进程的】 【也有人做分布式section】 【主从集群中多个从就是做负载均衡的】 …

while陈述

回圈是用来进行进行重复性的工作&#xff0c;典型的回圈会进行下列三项基本任务 1. 控制变数初始设定2. 回圈结束条件测试3. 调整控制变数的值 关键字 while构成C 中回圈的一种&#xff0c;常用于没有确定重复次数的回圈&#xff0c;同时while后面接着小括弧为回圈结束的条件…

上位机第二弹

之前写的代码用上了 现在想想 &#xff0c;北向一侧还挺难搞&#xff0c;设计很巧妙

Continual Test-Time Domain Adaptation--论文笔记

论文笔记 资料 1.代码地址 https://github.com/qinenergy/cotta 2.论文地址 https://arxiv.org/abs/2203.13591 3.数据集地址 论文摘要的翻译 TTA的目的是在不使用任何源数据的情况下&#xff0c;将源预先训练的模型适应到目标域。现有的工作主要考虑目标域是静态的情况…

python - 列表 / 元组 / 字符串

一.列表 由于pyhon的变量没有数据类型&#xff0c;所以python是没有数组的&#xff08;因为数组只能存放一种类型&#xff0c;要么全部存放整型&#xff0c;要么全部存放浮点型&#xff09;&#xff0c;只有列表list&#xff0c;所以整数&#xff0c;浮点数&#xff0c;字符串…

传输线阻抗匹配电阻端接的方式

电路为什么需要端接&#xff1f; 众所周知&#xff0c;电路中如果阻抗不连续&#xff0c;就会造成信号的反射&#xff0c;引起上冲下冲、振铃等信号失真&#xff0c;严重影响信号质量。所以在进行电路设计的时候阻抗匹配是很重要的考虑因素。 对我们的PCB走线进行阻抗控制已经…

双指针系列第 8 篇:盛水最多的容器。几句话讲明白!

Leetcode 题目链接 思路 取首尾双指针和水量如下所示&#xff0c;设高度函数为 h ( i ) h(i) h(i)&#xff0c;在下图中 h ( l ) < h ( r ) h(l) < h(r) h(l)<h(r)。 观察以 l l l 为左边界所能构成的其他水量&#xff0c;与矮的右边界搭配结果如下。 与高的…

jdk17卸载后换jdk1.8遇到的问题

过程&#xff1a; 1、找到jdk17所在文件夹&#xff0c;将文件夹进行删除。&#xff08;问题就源于此&#xff0c;因为没删干净&#xff09; 2、正常下载jdk1.8&#xff0c;按照网上步骤配置环境变量&#xff0c;这里我参考的文章是&#xff1a; http://t.csdnimg.cn/Svblk …

【RT摩拳擦掌】如何构建RT AVB switchendpoint平台

【RT摩拳擦掌】如何构建RT AVB switch&endpoint平台 一&#xff0c;文档简介二&#xff0c;平台构建2.1 软硬件情况2.2 配置RT1170 AVB端点2.2.1 1块MIMXRT1170开发板做talker配置2.2.2 2块MIMXRT1170开发板做listener配置 2.3 AVB Switch 配置2.3.1 MOTU AVB Switch2.3.2 …