110. turtle库创建画笔对象

110. turtle库创建画笔对象

【目录】

文章目录

  • [110. turtle库创建画笔对象](#110. turtle库创建画笔对象)
    • [1. 知识回顾-类与对象](#1. 知识回顾-类与对象)
      • [1.1 类](#1.1 类)
      • [1.2 对象](#1.2 对象)
    • [2. 创建画笔对象](#2. 创建画笔对象)
      • [2.1 方法1](#2.1 方法1)
      • [2.1 方法2](#2.1 方法2)
    • [3. 绘制一个正方形](#3. 绘制一个正方形)
    • [4. 总结](#4. 总结)

【正文】

1. 知识回顾-类与对象

类是创建对象的蓝图。

对象是类的实例。

1.1 类

类(Class)用于描述具有相同属性和方法的对象集合。

类可以看作是一个模板或者蓝图,它定义了一组属性和方法,这些属性和方法可以被所有根据该类创建的对象共享。

类是一种概念而非具体物体。

  • 汽车是一个类。
  • 字符串是Python内置类。
  • 列表是Python内置类类。

:类是一种抽象的概念,它。在Python中,我们使用class关键字来定义一个类。例如,我们可以定义一个名为MyClass的类,它有一个属性x和一个方法print_x,这个方法可以打印出属性x的值。

【定义类的语法】

python 复制代码
class 类名:
    类具体实现代码块

类名首字母要大写。

1.2 对象

对象(Object)是指某一类具体事物,也称为实例(instance),是类对应的具体事物。

汽车作为一个抽象的概念,可以被看做一个类。

而一辆实实在在的汽车,则是"汽车"这个类的对象。

Python中,一切皆是对象。

每个对象都有自己的类和内存地址。

实例化类可以创建一个对象。

每个对象都有自己的状态和行为。

  • 状态通过属性来表示的。状态=属性
  • 行为通过方法来定义的。行为=方法

【创建对象语法】

python 复制代码
对象名=类名( )

2. 创建画笔对象

2.1 方法1

【语法示例】

python 复制代码
# 从turtle库中导入Turtle类
from turtle import Turtle
# 创建画笔对象:对象名=类名( )
# pen:对象名
# Turtle:类名
# 创建的pen这个对象可以用来在屏幕上绘制图形
pen = Turtle()

2.1 方法2

【语法示例】

python 复制代码
# 导入turtle库
import turtle
# 导入的是整个库,要调用某个库的类,库名要作为前缀
# 创建画笔对象:对象名=库名.类名( )
# turtle:库名
# pen:对象名
# Turtle:类名
# 创建的pen这个对象可以用来在屏幕上绘制图形
pen =turtle.Turtle()

3. 绘制一个正方形

【效果展示】

【代码示例】

python 复制代码
from turtle import Turtle, Screen

# 创建屏幕对象
screen = Screen()

# 设置屏幕大小
screen.setup(width=800, height=600)

# 创建海龟对象
my_turtle = Turtle()

# 设置海龟的形状
my_turtle.shape("turtle")

# 设置海龟的速度
my_turtle.speed(1)

# 绘制正方形
for _ in range(4):
    my_turtle.forward(100)
    my_turtle.right(90)

# 关闭窗口
screen.exitonclick()

【源码文件】

110-绘制正方形图案.py

【正方形的实现】

  • 第1次for循环,画笔向前移动100个单位并右转90度,画笔此时向
  • 第2次for循环,画笔向前移动100个单位并右转90度,画笔此时向
  • 第3次for循环,画笔向前移动100个单位并右转90度,画笔此时向
  • 第4次for循环,画笔向前移动100个单位并右转90度,画笔此时向

4. 总结

【创建画笔对象】

python 复制代码
# 方法1
from turtle import Turtle
pen = Turtle()

# 方法2
import turtle
pen =turtle.Turtle()

【参考书籍】

《码上行动 用ChatGPT学会Python编程》

相关推荐
yy我不解释10 分钟前
关于comfyui的mmaudio音频生成插件时时间不一致问题(三)
开发语言·python·ai作画·音视频·comfyui
冗量16 分钟前
langchain的学习路径
python·langchain
love530love24 分钟前
不用聊天软件 OpenClaw 手机浏览器远程访问控制:Tailscale 配置、设备配对与常见问题全解
人工智能·windows·python·智能手机·tailscale·openclaw·远程访问控制
站大爷IP33 分钟前
Python 合并 PDF 文件(批量处理方法)
python
2501_9454235433 分钟前
工具、测试与部署
jvm·数据库·python
Oueii34 分钟前
数据分析师的Python工具箱
jvm·数据库·python
weixin_4219226940 分钟前
使用Scikit-learn进行机器学习模型评估
jvm·数据库·python
Liu6288842 分钟前
如何为开源Python项目做贡献?
jvm·数据库·python
mygugu43 分钟前
详细分析swanlab集成mmengine底层实现机制--源码分析
python·深度学习·可视化