Python第二周作业
绘制五角星
import turtle turtle.color('black','red')
turtle.pensize(10)
turtle.begin_fill()
for i in range(5):
turtle.fd(200)
turtle.rt(144) turtle.end_fill()
Superstar
绘制一组同心圆
从键盘输入半径、绘制同心圆的个数及画笔的颜色
import turtle turtle.pensize(10) r=eval(input())
n=eval(input())
color=input()
turtle.pencolor(color) for i in range(n):
turtle.circle(r+(i-1)*20,360)#每个同心圆的半径差为20
turtle.penup()
turtle.right(90)
turtle.forward(20)
turtle.left(90)
turtle.pendown()
同心圆
键盘输入:
20
4
red
绘制渐变的圆
描述
利用turtle库的circle(50)函数可以画半径为50的圆,circle(50,steps=n)可以画半径为50的圆的内接正n边形,利用这个方法绘制示例中的图形,设置画笔为蓝色并用黄色填充图形。n由用户输入,要求n>=3且小于10。(注意:最后一个必须是圆,不能是正多边形)
输入格式
一个大于等于3且小于10的正整数
#渐变的圆
import turtle number = int(input()) #把用户输入转成整数 turtle.screensize(1200,1000)
turtle.penup()
turtle.goto(-300,0)
turtle.pendown() turtle.pensize(5)
turtle.color("blue","yellow")
turtle.begin_fill()
turtle.forward(-50) for i in range(3,number):
turtle.circle(50, steps=i)
turtle.forward(100) turtle.circle(50, steps=number)
if number == 1:
turtle.circle(50)
else:
turtle.forward(100)
turtle.circle(50)
turtle.end_fill()
turtle.hideturtle() #隐藏海龟
输入:10
输出:
绘制叠加的等边三角形
import turtle
turtle.pensize(10)
turtle.color('purple','pink')
turtle.begin_fill() turtle.forward(100)
turtle.right(120)
turtle.forward(100) turtle.right(120)
turtle.forward(100)
turtle.right(60)
turtle.forward(100) turtle.right(120)
turtle.forward(200)
turtle.right(120)
turtle.forward(200)
turtle.right(120)
turtle.forward(100) turtle.end_fill()
叠加三角形
绘制奥运五环
#五环
import turtle #引用turtle库
turtle.pensize(10) #设置画笔大小
coordA=[-110,0,110,-55,55] #各个圆X轴坐标
coordB=[-25,-25,-25,-75,-75] #各个圆的Y坐标
colors=["red","blue","green","yellow","black"]
for i in range(5):
turtle.pencolor(colors[i])
turtle.penup()
turtle.goto(coordA[i],coordB[i])
turtle.pendown()
turtle.circle(45)
turtle.hideturtle() #隐藏画笔
五环
啊~五环!你比六环少一环~
绘制八卦阵
#八卦阵
import turtle
turtle.pensize(5) #画笔大小
turtle.penup()
turtle.goto(0,120)
turtle.pendown() turtle.color("black","black")
turtle.begin_fill()
turtle.circle(-120,180)
turtle.circle(-60,180)
turtle.circle(60,180)
turtle.end_fill()
turtle.circle(120,180) turtle.penup()
turtle.goto(0,40)
turtle.pendown()
turtle.begin_fill()
turtle.circle(20)
turtle.end_fill() turtle.color("black","white")
turtle.penup()
turtle.goto(0,-80)
turtle.pendown()
turtle.begin_fill()
turtle.circle(20)
turtle.end_fill() turtle.hideturtle() #隐藏画笔
八卦阵
这里我们取大圆的半径为120,中圆自然是它的一半,小圆我们取中圆的三分之一。这样以后,各个点的坐标都出来了
天灵灵,地灵灵~
绘制国际象棋盘
#国际象棋
import turtle
turtle.pensize(3)
turtle.screensize(1200,1000) #画布大小
turtle.color("black","black")
n=eval(input()) #输入一个数 turtle.penup()
turtle.goto(-4*n,4*n) #从左上角开始画
turtle.pendown()
turtle.forward(8*n) #先画一个大的正方形
turtle.right(90)
turtle.forward(8*n)
turtle.right(90)
turtle.forward(8*n)
turtle.right(90)
turtle.forward(8*n) coordA=[-3*n,-n,n,3*n]
coordB=[4*n,2*n,0,-2*n] for i in range(4):
for j in range(4):
turtle.penup()
turtle.goto(coordA[i],coordB[j])
turtle.pendown()
turtle.begin_fill()
turtle.right(90)
turtle.forward(n)
turtle.right(90)
turtle.forward(n)
turtle.right(90)
turtle.forward(n)
turtle.right(90)
turtle.forward(n)
turtle.end_fill() coordC=[-4*n,-2*n,0,2*n]
coordD=[3*n,n,-n,-3*n] for i in range(4):
for j in range(4):
turtle.penup()
turtle.goto(coordC[i],coordD[j])
turtle.pendown()
turtle.begin_fill()
turtle.right(90)
turtle.forward(n)
turtle.right(90)
turtle.forward(n)
turtle.right(90)
turtle.forward(n)
turtle.right(90)
turtle.forward(n)
turtle.end_fill() turtle.hideturtle()
国际象棋盘
题目: 画一个国际象棋盘,小格边长由用户输入2020-03-19
思路:先画一个大的正方形,设定一个N值为小正方形的边长。这样我们可以找到每个小正方形的坐标。开始绘画,按一下思路,这里会用到两层循环哦!
这是过程图:
这是结果:
注:从开始填充到结束填充,需要的是起点和终点都是同一个点。也就是说,一个封闭的图形才可以填充,否则,将会是起点和终点的连线之间所有封闭图形的填充。这也是我采用这种思路的原因。
感谢大家的浏览!
Python第二周作业的更多相关文章
- 20169212《Linux内核原理与分析》第二周作业
<Linux内核原理与分析>第二周作业 这一周学习了MOOCLinux内核分析的第一讲,计算机是如何工作的?由于本科对相关知识的不熟悉,所以感觉有的知识理解起来了有一定的难度,不过多查查资 ...
- 20169210《Linux内核原理与分析》第二周作业
<Linux内核原理与分析>第二周作业 本周作业分为两部分:第一部分为观看学习视频并完成实验楼实验一:第二部分为看<Linux内核设计与实现>1.2.18章并安装配置内核. 第 ...
- Java第二周作业
Java第二周作业 本周作业: 参考http://www.cnblogs.com/rocedu/p/7911138.html 学习第二三章视频 参考http://www.cnblogs.com/roc ...
- C语言--第二周作业评分和总结(5班)
作业链接:https://edu.cnblogs.com/campus/hljkj/CS2017-5/homework/1026 一.评分要求 要求1 阅读指定博客+阅读收获+例子.(5分) 要求2 ...
- 2017-2018-1 Java小组-1623 第二周作业
2017-2018-1 Java小组-1623 第二周作业 关于游戏软件的问题 讨论结果 20162301张师瑜 20162305李昱兴 20162306陈是奇 20162308马平川 2016231 ...
- 2017-2018-1 JAVA实验站 第二周作业
2017-2018-1 JAVA实验站 第二周作业 小组成员: 组长 20162318张泰毓 成员 20162303石亚鑫 20162304张浩林 20162307张韵琪 20162321王彪 201 ...
- 2017-2018-1 20179205《Linux内核原理与设计》第二周作业
<Linux内核原理与分析>第二周作业 本周视频学习情况: 通过孟老师的视频教程,大致对风诺依曼体系结构有了一个初步的认识,视频从硬件角度和程序员角度对CPU和Main Memory(内存 ...
- 2017-2018-1 20179215《Linux内核原理与分析》第二周作业
20179215<Linux内核原理与分析>第二周作业 这一周主要了解了计算机是如何工作的,包括现在存储程序计算机的工作模型.X86汇编指令包括几种内存地址的寻址方式和push.pop.c ...
- 2019-2020-1 20199303<Linux内核原理与分析>第二周作业
2019-2020-1 20199303第二周作业 1.汇编与寄存器的学习 寄存器是中央处理器内的组成部份.寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令.数据和位址.在中央处理器的控制部件中 ...
随机推荐
- json/xml processing model与xml和json的简要区别
1.JavaScript Object Notation(JSON) JSON是一种轻量级数据交换格式,广泛用作通用格式,用于序列化和反序列化通过Internet相互通信的应用程序中的数据.这些应用程 ...
- <USACO09FEB>庙会捷运Fair Shuttleの思路
一个没有被我成功证明的 贪心 但是 ac了的 别人排序都是排终点.但我的排终点错了emm排起点才对qvq 有没有人友情看看怎么证(没有 #include<cstdio> #include& ...
- JavaScript值类型和引用类型有哪些
JavaScript值类型和引用类型有哪些 (1)值类型:数值.布尔值.null.undefined. (2)引用类型:对象.数组.函数.
- kafka&&kafka-manager部署安装
一.zk集群部署 二.kafka部署安装 1.创建kafka用户和日志路径,(直接执行) groupadd kafka useradd -g kafka kafka mkdir -p /web/kaf ...
- HTTP Continuation or non-HTTP traffic
发现一个 HTTP Continuation or non-HTTP traffic的数据包,之前没有碰到过.不懂其意义,一看长度,显示1460,与TCP segment of a reas ...
- python常用魔术方法概览
构造和初始化 __init__(self, args) 构造函数 __new__(cls) 传入的是类实例 __del__(self) 析构函数,调用 del cls 时会被调用 属性访问控制 __g ...
- Flink命令行提交job (源码分析)
这篇文章主要介绍从命令行到任务在Driver端运行的过程 通过flink run 命令提交jar包运行程序 以yarn 模式提交任务命令类似于: flink run -m yarn-cluster X ...
- Java设计模式之结构模式
一.外观模式 分析:外观模式是为子系统的一组接口提供一个统一的界面,数据库JDBC连接应用就是外观模式的一个典型例子,特点:降低系统的复杂度,增加灵活性.结果:代码示例: public class D ...
- Bootstrap4 正式发布
历经三年开发,前端框架Bootstrap 4正式发布了.然而今天的Web世界已经和当初Mark Otto发布Bootstrap时的情况大为不同,一些开发者由此质疑它的更新是否还有意义 1.V4版本的主 ...
- Eight II HDU - 3567
Eight II Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 130000/65536 K (Java/Others)Total S ...