第三章 python特点和蟒蛇绘制(turtle库)

python是通用语言,它的设计初心在于解决问题的逻辑上,尽量把复杂而细微的差别性隐藏起来,使用者无需去关心。
我个人觉得有点像操作系统的概念,把“丑陋”的硬件隐藏起来,事实上以前的各种语言也在通用性,跨平台性上努力,只不过python做得最好。
它的两个特点:
①完成同样的功能,python的代码量只有c语言的10%,相当于效率10倍提高。
②拥有13万多的第三方库,这些库由全球的工程师和爱好者提供,并以每年2万的速度快速增长。

python的库大体可分为两类:标准库和第三方库。
标准库是安装python的时候,程序附带的。
第三方库就需要单独安装,才能使用。

个人疑惑:理论上说,只要使用某一个标准语言,它都是通用跨平台的,比如标准c,标准c++等,我学过的简陋知识告诉我——所谓跨平台,真正具体实现的时候,一样是调用各自平台的底层api,只不过这个工作在编译或解释的时候,由编译器或解释器去完成了,类似于c语言的预编译#ifdef。
换句话说,现在高级语言都是跨平台的。
既然都是调用库,复用别人的代码,理论上任何语言都可以啊,为什么发展时间比python长的其他语言,库的数量远远不如python?其他语言调用库,也能完成相同的工作吧。
这里写图片描述
助教老师给出了回答。


画一条蟒蛇

import turtle
turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)
turtle.pendown()
turtle.pensize(25)
turtle.pencolor("purple")
turtle.seth(-40)
for i in range(4):
    turtle.circle(40,80)
    turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()

运行起来效果不错
这里写图片描述
就是那个控制台不知怎么去掉。
学会了蟒蛇绘制,就能学会圆形,五角星,国旗,机器猫等等,掌握绘制一条线的方法,就可以绘制整个世界(理论上)。
turtle库又名海龟库,是python绘图体系的入门实现,turtle绘图诞生于1969年,属于python的标准库之一。

基本原理:
想象有一只海龟,其实在窗口的正中心,在画布上游走,它走过的轨迹就形成绘制的图形。
这个海龟能由程序控制,可以改变颜色,改变宽度等。
①turtle的绘图窗体就是一个画布空间,最小单位是像素。

②setup方法可以设置窗体的起始位置(左上角)和大小,width,height,startx,starty,如果不设置其实位置,默认窗口在屏幕中心。

③空间坐标体系,包含绝对坐标和海龟坐标两种,绝对坐标是以窗体的正中心为(0,0);海龟坐标是以“海龟”的视觉来考虑,分为前进方向fd,后退方向bk,左侧方向,右侧方向。

④角度坐标体系,包含绝对角度和海龟角度两种,seth(angle)改变海龟行进方向(角度),但仅仅是改变并不行进,angle是度数。left(angle)海龟向左旋转多少度,right(angle)向右转。

⑤RGB色彩体系,RGB由红绿蓝三原色描述万物颜色,整数值表示,也可以由小数值表示。
英文 中文 RGB整数 RGB小数
white 白色 255,255,255 1,1,1
yellow 黄色 255,255,0 1,1,0
magenta 洋红 255,0,255 1,0,1
cyan 青色 0,255,255 0,1,1
blue 蓝色 0,0,255 0,0,1
black 黑色 0,0,0 0,0,0
seashell 海贝 255,245,238 1,0.96,0.93
gold 金色 255,215,0 1,0.84,0
pink 粉红 255,192,203 1,0.75,0.8
brown 棕色 165,42,42 0.65,0.16,0.16
purple 紫色 160,32,240 0.63,0.13,0.94
tomato 番茄 255,99,71 1.0,0.39,0.28

turtle库默认使用小数值模式,当然也可以使用colormode(255)切换为整数,colormode(1.0)切换为小数。


import关键字,表示导入某个库,然后就可以使用这个库的功能。
传统的是库名.方法来使用,也可以利用from关键字配合import简化。比如

from turtle import*

源代码所有turtle.的格式都可以简化不写了。
第一种方法不会出现函数重名,而且阅读起来更清晰。
第二种方法虽然简化了,但会出现函数重名,阅读起来也容易混淆,不知道是哪一个库的调用(又或者是自己编写的库)。
python提供另一种方法,综合工作量简化与代码清晰,使用 import 库名 as 库别名

import turtle as tu

把turtle取了一个别名tu,这样写tu.setup和turtle.setup效果一样。
提倡使用这种方法。

猜你喜欢

转载自blog.csdn.net/dark_tone/article/details/80088241
今日推荐