Python学习之turtle库和蟒蛇绘制程序
Python的函数库
Python语言与C语言Java类似,可以大量使用外部函数库包含在安装包中的函数库:。
比如math, random, turtle等其他函数库,其他函数库用户根据代码需求自行安装。
Python对函数库引用的方式
第一种方式
import <库名>
例如: import turtle(turtle库是Python中绘制图形的库,里面包含多种绘制图形的方法)
如果需要用到函数库中函数,需要使用:
<库名>. <函数名>
比如要用到turtle库里面绘制直线的fd()方法,就得用turtle.fd()格式使用。
例 >> >import turtle
>> > turtle.fd(100)
第二种方式
from <库名> import < 函数名>from <库名> import *
调用函数不需要<库名> ,直接使用<函数名>
例 > > > from turtle import *
>> > fd(100)
两种引|用方式的区别
这两种引用方式对程序运行没有区别,需要注意:如果采用第一种方式 ,用户自定义的函数名字
可以和库中函数的名字一样,例如,程序中可以定义自己的fd()函数如果采用第二种方式,用户
程序中不能用函数库中的名字定义函数。
例如:程序不能定义新的fd()函数,因为库turtle中的fd()函数也是直接通过fd()调用。
对于新手,建议使用第一种方式,不容易混淆的同时可以让自己和别人清楚的知道被调用函数
的出处。
小蟒蛇的绘制
代码:
import turtle
def drawSnake (rad, angle, len, neckrad):
for i in range (1en) :
turtle. circle (rad, angle)
turtle. circle( -rad, angle)
turtle . circle (rad, angle/2)
turtle . fd (rad)
turtle . circle (neckrad+1, 180)
turtle . fd (rad*2/3)
def main() :
turtle. setup (1300, 800, 0, 0)
pythonsize = 30
turtle . pensize (pythonsize)
turtle . pencolor ("blue")
turtle . seth(-40)
drawSnake (40 , 80, 5, pythonsize/2)
main ()
运行结果:

思路整理:
(1)我们要绘制小蟒蛇,必须先调用turtle库,然后定义一个绘制蟒蛇的函数drawSnake (rad, angle, len, neckrad):,
里面包含绘制蟒蛇的方法。根据小蟒蛇的运动轨迹,首先我们要定义画笔画弧线的半径(这里半径是矢量,有方向),
以及角度。引用for循环来完成画弧线的部分。完成循环部分后,接着有一小段弧形,接着是一小段直线,接着是180度
的反转,最后有一小段直线。turtle.circle是画弧线的方法,turtle.fd是画直线的方法。
(2)写完绘制方法后,定义main函数,要在main()函数中进行初始化,首先对绘图的窗口的大小及位置进行初始化,
然后对画笔的粗细,画笔的颜色进行初始化,然后初始化画笔的启动方向。最后对函数对
drawSnake (rad, angle, len, neckrad): 里的参数进行赋值。
(3)程序的入口main()。
Python学习之turtle库和蟒蛇绘制程序的更多相关文章
- [Python学习笔记] turtle库的基本使用
turtle库常用函数 引入turtle模块 import turtle turtle的绘图窗体 #setup()设置窗口大小及位置#setup()可省略turtle.setup(width,heig ...
- Python学习day45-数据库(总结)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习day44-数据库(单表及多表查询)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习day43-数据库(多表关系)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习day42-数据库的基本操作(1)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- Python学习day41-数据库(1)
figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...
- python学习2:turtle的使用蟒蛇绘制的学习以及自己摸索的等边三角形绘制(跟随mooc学习)
首先先放上蟒蛇的绘制程序 import turtle#引入外部库#def保留字用于 定义函数 def drawSnake(rad,angle,len,neckrad): for i in range( ...
- python中的turtle库绘制图形
1. 前奏: 在用turtle绘制图形时,需要安装对应python的解释器以及IDE,我安装的是pycharm,在安装完pycharm后,在pycharm安装相应库的模块,绘图可以引入turtle模块 ...
- python中关于turtle库的学习笔记
一.基础概念 1.画布:画布就是turtle为我们展开用于绘图区域, 我们可以设置它的大小和初始位置.常用的画布方法有两个:screensize()和setup(). (1)turtle.screen ...
随机推荐
- Scala函数式编程(三)
Scala既是一门面向对象(OOP)语言,又是一门函数式编程(FP)语言.作为一门支持函数式编程的语言,Scala鼓励面向表达式编程(EOP)模型.简单来说,EOP中每个语句都有返回值.这一模式很明显 ...
- JMeter定制Sampler
1.背景 相信大家在使用JMeter工具测试的时候,经常会遇到自带采样器无法满足测试要求的情况.面对这种情况,通常的办法是使用万能的自定义Java Request的达到测试目的.这个方法有个弊端,只要 ...
- 神盘GCCX,2019必撸大毛!
自从今年5月转型投资以来,已经很少薅羊毛了! 不是不撸,是因为一般的羊毛我真看不上! 撸羊毛能不能发财,能不能日入几百几千! 答案是,可以! 干羊毛,像趣步,云钱包,云比特,环保币,很多人都发财了!前 ...
- Docker入门-docker compose的使用
Compose简介 Compose项目是Docker官方的开源项目,负责实现对Docker容器集群的快速编排.其代码目前在https://github.com/docker/compose 上开源. ...
- 聊一聊Java字符串的不可变
前言 在 Java 开发中 String (字符串)对象是我们使用最频繁的对象,也是很重要的对象.正是使用得如此频繁,String 在实现层面上不断进行优化,从 Java6 到 Java7,再到 Ja ...
- 无重复字符的最长子串[双指针+哈希表] LeetCode.3
给定一个字符串,请你找出其中不含有重复字符的 最长子串 的长度. 示例 1: 输入: "abcabcbb" 输出: 3 解释: 因为无重复字符的最长子串是 "abc&qu ...
- JavaScript数组方法大全(第二篇)
数组方法大全(第二篇) 注意:如有错误欢迎指出,如有雷同纯属巧合,本博客参考书籍JavaScript权威指南,有兴趣的小伙伴可以去翻阅一下哦 forEach()方法 遍历数组,里面可以传递一个方法 v ...
- 打包一沓开源的 C/C++ 包管理工具送给你!
本文作者:HelloGitHub-ChungZH 博客地址:https://chungzh.cn/ 包管理器可以帮助你更方便地安装依赖关系,并决定所安装的版本,提高你的开发幸福感.许多语言都有自己的包 ...
- odoo t标签用法
在odoo中,通过QWeb来对模板进行渲染后加载到浏览器中,而模板中有许多的标签来定制各种需求变化,在这里记录学习过程中碰到的标签定义,以方便查询. 模板中的标签统一都是以"t-" ...
- python requests接口测试系列:连接mysql,获取mysql查询的值作为接口的入参
主要思路: 连接mysql数据库,这里数据库需要使用Proxifier来设置代理,然后才能正常连接 获取mysql数据库中某一数据,作为接口的参数信息 将接口返回结果保存至csv数据表中 # -*- ...