python学习笔记2
关于python
13万第三方库(语法简洁 + 生态高产) 唯一的超级语言
计算机系统结构时代 到 人工智能时代
五种编程语言
C(指针、内存、数据类型,理解计算机系统结构,偏底层)
Java(网络和视窗时代,面向对象,跨平台,理解主客体之间关系)
C++(对象、多态、继承,理解主客体关系,大规模程序例如OS)
VB(对象、按钮、文本框,理解交互逻辑,桌面应用设计)
python(编程逻辑、第三方库,理解问题求解)
python语言的通用性、简洁性和生态性
实例二、python 蟒蛇绘制
#PythonDraw.py
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库的使用
turtle(海龟)库是turtle绘图体系的python实现;是python语言的标准库之一;入门级图形绘制
python计算生态 = 标准库 + 第三方库
--标准库:随解释器直接安装到操作系统中的功能模块
--第三方库:需要经过安装才能使用的功能模块
--库Library、包Package、模块Module,统称 模块
1、turtle 的原理
turtle (海龟)是一种真实存在:有一只海龟,其实在窗体正中心,在画布上游走,走过的轨迹形成了绘制的图形,海龟由程序控制,可以改变颜色、宽度等。
2、turtle 的绘图窗体
画布空间,最小单位是像素。
turtle.setup(width, height, startx, starty)
#-setup() 设置窗体大小及位置
#4个参数后两个可选,确定窗体位于屏幕的位置
3、turtle空间坐标体系
绝对坐标: 海龟位于中心(0,0),第一象限(+,+)第二象限(-,+)......
turtle.goto(100,100)
turtle.goto(100,-100)
海龟坐标:海龟头朝右,那么可分为 前进方向、后退方向、左侧方向、右侧方向
turtle.fd(d) #向海龟的正前方向行进
turtle.bk(d) #向海龟的反方向运行
turtle.circle(r,angle) #以海龟左侧的某一点为圆心进行曲线运行
4、turtle角度坐标系
绝对角度:x轴正方向表示0或360度,负方向180或-180度
y轴正方向表示90或-270度,负方向270或-90度
turtle.seth(angle) #seth() 改变海龟行进方向,但不行进,angle为绝对角度
海龟角度:海龟头朝右,x轴正方向
turtle.left(angle) #向左改变行进方向
turtle.right(angle) #向右改变行进方向
5、RGB色彩模式
--RGB指 红 绿 蓝 三个通道的颜色组合
--RGB每色取值范围 0-255整数 或 0-1的小数
turtle库默认采用小数值,可切换为整数值
turtle.colormode(mode)
二、turtle 程序语法元素分析
1、库引用(扩充python程序功能)
①使用 import关键字,采用<a>.<b>() 编码风格
import <库名>
<库名>.<函数名>(<函数参数>)
②使用 from 和 import 关键字共同完成
form <库名> import <函数名>
from <库名> import *
<函数名>(<函数参数>)
......
#PythonDraw.py
from turtle import * #海归库
setup(650,350,200,200)
penup()
fd(-250)
pendown()
pensize(25)
pencolor("purple")
seth(-40)
for i in range(4):
circle(40,80)
circle(-40,80)
circle(40,80/2)
fd(40)
circle(16,180)
fd(40 * 2/3)
done()
注意:方法①不会出现函数重名问题,第②中方法会出现;因为①中<库名>.<函数名>...相当于构成了一个新的函数名
③使用 import 和 as 关键字共同完成
import <库名> as <库别名>
<库别名>.<函数名>(<函数参数>)
#重命名为更短的名字便于编写程序,有效的解决库重名且比较简单
2、画笔控制函数
画笔操作后一直有效(直到重新设置),一般成对出现
turtle.penup() 别名 turtle.pu() #抬起画笔,海龟在飞行
turtle.pendown() 别名 turtle.pd() #落下画笔,海龟在爬行
turtle.pensize(width) 别名 turtle.width(width) #画笔宽度,海龟的腰围
turtle.pencolor(color) #color 为颜色字符串 或 R,G,B的值,画笔的颜色
#--颜色字符串: turtle.pencolor("purple")
#--R,G,B的小数值:turtle.pencolor(0.63,0.13,0.94)
#--R,G,B的元组值:turtle.pencolor((0.63,0.13,0.94))
3、方向控制函数
控制海龟面对方向:绝对角度 & 海龟角度
turtle.setheading(angle) 别名 turtle.seth(angle)
#angle 改变行进方向,海龟走的角度(绝对角度)
turtle.left(angle) #海龟左转
turtle.right(angle) #海龟右转(旋转角度)
注意:只改变海龟行进方向,并不向前行进 (行进需要运动控制函数,走直线或者走曲线)
4、循环语句与 range() 函数
循环语句
for <变量> in range(<参数>)
<被循环执行的语句>
range() 函数
--range(N) 产生 0 到 N-1 的整数序列,共N个
--range(M,N) 产生 M 到 N-1 的整数序列,共 N-M 个
三、“蟒蛇绘制”代码分析
#PythonDraw.py
import turtle #海归库
turtle.setup(650,350,200,200) #设置窗体大小以及窗体位于屏幕的位置
turtle.penup() #抬起画笔,海龟飞行
turtle.fd(-250) #向后倒退250像素(海龟飞行,画布上并没有留下痕迹)
turtle.pendown() #放下画笔,海龟爬行
turtle.pensize(25) #设置画笔的的宽度(海龟的腰围)
turtle.pencolor("purple") #设置画笔的颜色为紫色
turtle.seth(-40) #改变海龟头的方向,绝对角度-40 处
for i in range(4): #循环(4截身体)
turtle.circle(40,80) #海龟走曲线,以40像素为半径绘制80度
turtle.circle(-40,80) #以反向40像素为半径绘制80度
turtle.circle(40,80/2) #以40像素为半径绘制80/2度
turtle.fd(40) #向前行进40像素
turtle.circle(16,180) #以10像素为半径,绘制半圆
turtle.fd(40 * 2/3) #向前行进
turtle.done() #程序运行之后不会退出,需要手工关闭窗体退出
#如果没有此行,程序运行之后自动退出
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?