|Python新手小白低级教程之项目篇——turtle库|第一章:turtle库基础(1)

项目篇—文章目录

  • 一、预告
  • 二、turtle基础
    • 1.导入
    • 2.画图代码
      • (1)turtle.forward(长度)
        • 练习1.1 画线段
      • (2)turtle.left()和turtle.right()操作符
        • 练习2.1 画出边长为100正方形
        • 练习2.2 画出边长为100的三角形
      • (3)turtle.color('颜色')
        • 练习3.1 画出彩色梯形
      • (4)turtle.backward()
      • (5)turtle.penup()&turtle.pendown()
        • 4.1 正反双向画虚线
  • 总结
  • Test Key
    • 1.1
    • 2.1
    • 2.2
    • 3.1
    • 4.1

一、预告

hello,大家好,我是BoBo仔,今天我们要开始一段新的内容——第三方库项目学习啦!我们今天学习的是turtle库,简称“海龟库”。话不多说,让我们开始今天的学习吧!

二、turtle基础

1.导入

首先,turtle是Python的第三方库,需要代码导入。这段代码是什么?
首先,我们要记住一个结构:import + 第三方库名
这个结构至关重要,因为以后我们在学习项目化编程时经常会用。
这里我们用的是Turtle库,所以我们在这里导入代码应该这么写:

import turtle

这是第一行基础代码,我们用它来导入turtle库。接下来,就是具体操作了。

2.画图代码

这个代码是turtle中最核心的内容,不过这个结构比较多样化。首先,我们要掌握一个核心结构:turtle.画图功能函数
掌握这个之后,我们要认识画图符号。

(1)turtle.forward(长度)

这个是所有turtle符号中最基础的一个,所以我们第一个学。
它的作用很简单,就是画一条长度为(括号里那个数的)直线。我们先试试看下面这个例子:

练习1.1 画线段

画一条长度为100的线段

(2)turtle.left()和turtle.right()操作符

left和right这两个单词大家应该都认识,分别是左边和右边,在turtle里表示左转、右转。这两个符号后面的括号分别是左转和右转的角度。当然,我们也要将他们俩和和forward()等合用。
接下来,我们就来试试两道题:

练习2.1 画出边长为100正方形

这个非常简单。众所周知,正方形有4条边,4个角,内角和是360°。所以,我们在写代码时一定需要用到以下几种功能符:
1.turtle.forward()
2.turtle.left()&turtle.right()
3.for循环
有了思路,大家会做了吗?

(注:对for循环理解不深刻的同学可以看看我写的这篇关于for循环的文章,唤醒一下脑中的知识哟!
https://editor.csdn.net/md/?articleId=136055291)

练习2.2 画出边长为100的三角形

这个问题解决思路类似上面那道题,首先我们要知道三角形有3条边,3个内角,内角和是180°。
也就是说3次循环,转角60°咯?Nonono,这个情况比较特殊,不是60,而是120°哦!记住啦,这个以后至关重要!
所以……你会做了吗?

(3)turtle.color(‘颜色’)

这个内容非常简单,就是改变画笔颜色。我们在turtle里面遇到的是默认的黑色。这个函数要注意:
1.color拼写不要错,英文的拼写方式是colour,大部分同学想必都是这么记的。但是,因为Python是ArM人发明的,所以按照他们国家的拼写,是color。
2.颜色的旁边必须用引号括起来。

练习3.1 画出彩色梯形

这个题目还是比较棘手的。首先,梯形的转角非常特殊,我们这里只要画一个等腰梯形就可以了。(颜色顺序:red——yellow——blue——green)

(4)turtle.backward()

这行代码的效果和forward相反,我们先来试试看它的效果。

import turtle 
turtle.speed(2)
for i in range(1,5):turtle.backward(100)turtle.left(90)

在这里插入图片描述
再来看看forward()
在这里插入图片描述
这里虽然只截了一段虚影,但是和backward的区别还是非常明显的。接下来,我们来看一下turtle库的其他重要指令。

(5)turtle.penup()&turtle.pendown()

这俩家伙大家猜猜他们是什么意思?对了,提笔和落笔。这两个代码我们似曾相识。学过scratch的小同学应该也见过。
当然,Python中的提笔落笔也非同寻常。接下来,我们来看一下怎么灵活使用这两个命令。

4.1 正反双向画虚线

我们之前画过直线,非常简单。这次我们来画虚线。
虚线,应该长这样:- - - - - - - - - - - -
大家想到什么没有?对了,不断提笔和落笔。多少多长大家自己决策,不过是循环的次数罢了。

【提示:forward是正,backward是反】

总结

总之来说,这节课的内容还是比较少的,大家要好好记住我们这节课学的。下节课,我们会学习更多的turtle命令符,大家敬请期待!

最后,制作不易,别忘了一圈三连,点亮关注!

Test Key

1.1

import turtle 
turtle.forward(100)

输出虽然是昙花一现,但是还是蛮神奇的。

2.1

import turtle 
for i in range(1,5):turtle.forward(100)turtle.left(90)

2.2

import turtle 
for i in range(1,15):turtle.forward(100)turtle.right(120)

3.1

#(颜色顺序:red——yellow——blue——green)
import turtle
turtle.speed(1)#本行代码请忽略,这是为了让我看得更清楚
turtle.color('red')
turtle.forward(375)
turtle.left(150)turtle.color('yellow')
turtle.forward(100)
turtle.left(30)turtle.color('blue')
turtle.forward(200)
turtle.left(30)turtle.color('green')
turtle.forward(100)
turtle.left(150)

这道题还是有点难度的,好好消化!

4.1

#正画
import turtle
turtle.speed(2)
for i in range(1, 13):turtle.pendown()turtle.forward(10)turtle.penup()turtle.forward(10)
#反画
import turtle
turtle.speed(2)
for i in range(1, 13):turtle.pendown()turtle.backward(10)turtle.penup()turtle.backward(10)

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

如若内容造成侵权/违法违规/事实不符,请联系瞎胡闹网进行投诉反馈,一经查实,立即删除!

相关文章

腾讯云4核8G12M轻量应用服务器性能够用吗?支持多少人?

腾讯云轻量4核8G12M轻量应用服务器支持多少人同时在线?通用型-4核8G-180G-2000G,2000GB月流量,系统盘为180GB SSD盘,12M公网带宽,下载速度峰值为1536KB/s,即1.5M/秒,假设网站内页平均大小为60KB…

Web前端-移动web开发_rem布局

文章目录 移动web开发之rem布局1.0 rem基础1.1 rem单位(重点)1.2 em单位(了解)1.3 媒体查询什么是媒体查询媒体查询语法规范 1.4 less 基础维护css弊端Less 介绍Less安装Less 使用之变量使用node编译less的指令Less 编译 vocode Less 插件Less 嵌套Less 运算Less中的Mixin混入L…

车载测试Vector工具——常见问题汇总

车载测试Vector工具——常见问题汇总 我是穿拖鞋的汉子,魔都中坚持长期主义的汽车电子工程师(Wechat:gongkenan2013)。 老规矩,分享一段喜欢的文字,避免自己成为高知识低文化的工程师: 屏蔽力是信息过载时代一个人的特殊竞争力,任何 消耗你的人和事,多看一眼都是你的…

C++重新入门-循环

目录 1.循环类型 while循环: for循环 基于范围的for循环(C11) do...while 循环 2.循环控制语句 3.无限循环 有的时候,可能需要多次执行同一块代码。一般情况下,语句是顺序执行的:函数中的第一个语句先执行,接着…

《零基础实践深度学习》基于线性回归实现波士顿房价预测任务1.3.3

1.3.3 基于线性回归实现波士顿房价预测任务 深度学习不仅实现了模型的端到端学习,还推动了人工智能进入工业大生产阶段,产生了标准化、自动化和模块化的通用框架。不同场景的深度学习模型具备一定的通用性,五个步骤即可完成模型的构建和训练&…

vs2019 - signtool签名和验签的手工操作

文章目录 vs2019 - signtool签名和验签的手工操作概述笔记导入根证书时间戳服务器的选择code sign - 签名文件在代码签名(code sign)前后的区别签名后, 查看属性, 是正常的.用signtool命令行进行验签移除签名END vs2019 - signtool签名和验签的手工操作 概述 signtool是进行c…

linux优化空间完全卸载mysql——centos7.9

文章目录 ⭐前言⭐linux命令使用💖 基础命令💖 内存优化💖 完全删除mysql ⭐结束 ⭐前言 大家好,我是yma16,linux优化空间&完全卸载mysql——centos7.9。 linux内存分配 在Linux中,内存分配是通过几种…

Linux---网络基础

计算机中的常见概念 协议(Protocol): 协议是计算机网络中用于通信的规则和约定的集合。它规定了数据传输的格式、序列、错误检测和纠正方法等。常见的网络协议包括TCP/IP、HTTP、FTP等。 IP地址(IP Address)&#xf…

Python3集合 set 心得

Python3集合 set 心得 本文是个人在学习中的一些心得,不能保证文中的内容准确,欢迎大家批评指正。 集合 set 是Python中的一种数据容器,集合有2种定义方式。 1、花括号 {} ,花括号内加入集合的元素,元素之间用逗号 …

通过Dynamo删除Revit中族参数探究

起因是这样的,有位同事想在项目中直接删除revit族的参数,而不打开族,避免因为重载族,造成一些管件连接断开,于是就有了下面这些研究,当然是因为我没办法实现这个想法,所以这次可以分享下研究的过…

linux系统定时任务管理

crontab使用 一、crontab简介 crontab 这个指令所设置的工作将会循环的一直进行下去!可循环的时间为分钟、小时、每周、每月或每年等。crontab 除了可以使用指令执行外,亦可编辑 /etc/crontab 来支持。 至于让 crontab 可以生效的服务则是 crond 这个服…

39 MDK 的编译过程及文件类型全解

文章目录 39.1 编译过程39.1.1 编译过程简介 39.2 程序的组成、存储与运行39.3 编译工具链39.3.1 MDK编译文件39.3.2 设置环境变量39.3.3 运行39.3.4 armcc、armasm 及 armlink39.3.4.1 armcc39.3.4.2 查询具体的MDK编译选项的具体信息39.3.4.3 armasm39.3.4.4 armlink39.3.4.5…

“OLED屏幕,色彩绚丽,画面清晰,让每一帧都生动无比。“#IIC协议【上】

"OLED屏幕,色彩绚丽,画面清晰,让每一帧都生动无比。"#IIC协议【上】 前言预备知识1.IIC协议初识1.1 IIC协议概述1.2 IIC协议的特点1.3 IIC协议的构成 2. IIC起始信号和终止信号2.1起始型号和终止信号时序图分析2.2起始信号函数和终…

JAVA学习笔记9

1.Java API 文档 1.java类的组织形式 2.字符类型(char) 1.基本介绍 ​ *字符类型可以表示单个字符,字符类型是char,char是两个字节(可以存放汉字),多个字符我们用字符串String ​ eg:char c1 ‘a’; ​ char c2…

【Android】使用Android Studio运行Hello World项目

文章目录 1. JDK的安装与配置2. Android Studio的安装3. 运行Hello World项目3.1 新建项目3.2 修改项目配置3.2.1 修改UI界面3.2.2 配置 Android SDK 3.3 添加并运行虚拟设备3.4 运行项目 1. JDK的安装与配置 想要使用Android Studio,必须先配置Java环境&#xff0…

vue3初识

目录 一、前言二、主观感受三、vue3初探 原文以及该系列教程文章后续可点击这里查看:vue初识 一、前言 Vue.js是一款流行的前端框架,最初由尤雨溪(Evan You)于2014年创建,非常的年轻。官网为vue3, 但要注…

Learn LaTeX 015 - LaTex Typeset 抄录

https://www.douyin.com/user/self?modal_id7306721102380764453&showTabpost GitHub address: https://github.com/yasenstar/learn_latex Gitee address: https://gitee.com/yasenstar/learn_latex

windows 查看磁盘空间 treesizefree

https://downloads.jam-software.de/treesize_free/TreeSizeFreeSetup.exe

Hugging Face 刚刚推出了一款开源的 AI 助手制造工具,直接向 OpenAI 的定制 GPT 挑战

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗?订阅我们的简报,深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同,从行业内部的深度分析和实用指南中受益。不要错过这个机会,成为AI领…

清空队列的方法

注意&#xff1a;C中的队列queue自身不支持clear操作&#xff0c;但双端队列deque是支持clear操作的。 方法一&#xff1a;直接用空的队列对象赋值 代码&#xff1a; queue<int> q; qqueue<int>(); 方法二&#xff1a;遍历出队列 代码&#xff1a; while(!q…