Python学习笔记——Turtle库源码的简单分析

查看源码方法,略。

一、发现疑问

测试

import turtle as t

print(type(t))#打印t的类型
t.forward(100)#使用海归的方法

t.done()#阻止窗口关闭

结果:

 

疑问: 为什么是模块类型,却能调用海归方法?

二、源码解答

1.import turtle引入的就是名称为turtle.py的文件,文件里面有好多类,包括Turtle类

知识拓展:Python的模块、包和库的区别https://blog.csdn.net/tscaxx/article/details/103680363

2.Turtle类里面的方法变成了全局方法,所以才能使用 turtle模块.Turtle类的方法

源码里面,这两个全局方法,将turtle模块中的_Screen、Turtle中的一些方法转成了全局方法。类加载的时候执行。

3.相当于,默认turtle模块里面有一个Turtle类的对象。我们还可以创造好多Turtle对象。

import turtle as t

print(type(t))#打印t的类型

t.forward(100)#默认的Turtle对象

t1 = t.Turtle()#创建第一个Turtle对象t1
t1.right(90)
t1.forward(100)

t2 = t.Pen()#创建第二个Turtle对象t2
t2.right(-90)
t2.forward(100)

结果:

说明:

t.Turtle()t.Pen()一样

源码解析:

三、待续。。。。。

发布了60 篇原创文章 · 获赞 4 · 访问量 7404

猜你喜欢

转载自blog.csdn.net/tscaxx/article/details/104094291
今日推荐