PythonMOOC学习笔记(二)
Python语言程序设计
北京理工大学 嵩天等
http://Python123.io 练习编程
第二周(基本图形绘制)
- 学习内容:编程逻辑、第三方库
语言本质:理解问题求解
解决问题:各类问题
适用对象:所有专业 - 语法简洁,C 代码量的10%;生态高产,超过13万第三方库。
- turtle库
turtle.setup(width, heigth, startx, starty) #设置窗体大小及位置
turtle 空间坐标体系
绝对坐标体系:turtle 在画布中间,向上向右为正方向。
turtle.goto(x, y) turtle 去这个点(x, y)
turtle 为中心的坐标:
turtle.fd(d) 向前
turtle.bk(d) 向后
turtle.circle(r, angle)
绝对角度 turtle.seth(angle) 转向不控制行进
turtle 角度 turtle.left(angle) turtle.right(angle) turtle 的左右
RGB 色彩体系 RGB 0-255 整数或者 0-1 小数 默认使用小数值
turtle.colormode(mode)
mode=1:小数模式; mode=255整数模式 - 库引用扩充 Python 程序功能的方式
-使用 import 保留字完成,采用 < a >. < b>() 编码风格
import <库名>
<库名>.<函数名>(<函数参数>) 不会出现函数名重名问题
-使用 from 和 import 保留共同完成
from <库名> import <函数名>
from <库名> import *
<函数名>(<函数参数>) 可能出现函数名重名问题
-使用 import 和 as 保留字共同完成
import <库名> as <库别名>
<库别名>.<函数名>(<函数参数>) - 画笔控制
画笔操作后一直有效,一般成对出现
-turtle.penup() 别名 turtle.pu() turtle.up()
抬起画笔,海龟在飞行。
-turtle.pendown() 别名 turtle.pd()
画笔落下,海龟在爬行。只是放下画笔,并不绘制任何内容。
-turtle.pensize(width) 别名 turtle.width(width)
画笔宽度,海龟的腰围。
-turtle.pencolor(color) color 为颜色字符串或r, g, b 值
画笔颜色,海龟在涂装。
turtle.pencolor(“purple”) 字符串小写
turtle.pencolor(0.63, 0.13, 0.94) RGB 的小数值
turtle.pencolor((0.63, 0.13, 0.94)) RGB 的元组值 - turtle 运动控制函数
控制海龟行进:走直线 & 走曲线
-turtle.forward(d) 别名 turtle.fd(d)
d 可以为负数,负数表示倒着行进
向前行进,海龟走直线。
-turtle.circle(r, extent=None)
根据半径 r 绘制 extent 角度的弧形
-r 默认圆心在海龟左侧 r 距离的位置,r 为负数时表示圆心在右侧。
-extent 绘制角度,默认是 360 度整圆 - turtle 方向控制函数
控制海龟面对方向:绝对角度 & 海龟角度
-turtle.setheading(angle) 别名 turtle.seth(angle)
angle 改变行进方向,海龟走角度。
-turtle.left(angle) 海龟向左转
-turtle.right(angle) 海龟向右转
angle 海龟当前行进方向上旋转的角度 - 循环语句和 range() 函数
循环语句 按照一定次数循环执行一组语句
for <变量> in range(<函数名>)
<被循环执行的语句>
<变量>表示每次循环次数,0 到<次数> - 1
for i in range(5):
print(“Hello:”,i)
Hello: 0
…
这里冒号后有空格,用逗号分开后面拟输出 i 会有空格,这里这个逗号不能省。
range() 函数
产生循环计数序列,
range(N)
产生 0 到 N-1的整数序列,共 N 个
range(M, N)
产生 M 到 N-1 的整数序列,共 N-M 个 - turtle.done() 程序运行最后不会自动退出,就像system(“pause”)