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.汇编与寄存器的学习 寄存器是中央处理器内的组成部份.寄存器是有限存贮容量的高速存贮部件,它们可用来暂存指令.数据和位址.在中央处理器的控制部件中 ...
随机推荐
- LINQ之路 7:子查询、创建策略和数据转换(要点笔记)
匿名类型 上面我们自己定义了类型TempProjectionItem来存放查询的结果.通过使用匿名类型,我们可以省去这种中间类型的定义,而由编译器来帮我们完成: select item.Origina ...
- [洛谷P3386] [模板] 二分图匹配 (匈牙利算法)
题目传送门 毒瘤出题人zzk出了个二分图匹配的题(18.10.04模拟赛T2),逼我来学二分图匹配. 网络流什么的llx讲完之后有点懵,还是匈牙利比较好理解(绿与被绿). 对于左边的点一个一个匹配,记 ...
- unittest(2)-加载用例的3种方式-输出测试报告
# 导入测试类执行测试用例 import unittest from day_20191202.class_unittest import TestMathMethod, TestMulti # fr ...
- 高效JS简化版
详:.doc (颜色标注)2章17条 2018.6.24 星期日 1:24 第 1 章 让自己习惯 JavaScript 第 1 条:了解你使用的 JavaScript 版本 ES5 引入了另一种版本 ...
- 苹果会放弃iPhone吗?
苹果会放弃iPhone吗?一般来讲,这是一个相当白痴的问题,苹果放弃iPhone的概率比唐僧放弃取经的概率要低20倍.前段时间回老家,正在学习英语的小侄子问我:"叔叔,苹果用英语怎么说呀? ...
- 工业界 vs. 学术界: 一个年轻员工的视角
本文发表于<中国计算机学会通讯>2015年第5期,转载已获得授权 作者:菲利普·郭 (Philip Guo),美国罗切斯特大学助理教授 译者:王长虎,微软亚洲研究院主管研究员 如果你即将 ...
- 5G时代,会有什么奇葩事儿?
在3GPP RAN第187次会议关于5G短码方案的讨论中,中国华为推荐的PolarCode方案获得认可,成为5G控制信道eMBB场景编码的最终解决方案.坦白讲,笔者在读这个新闻的时候,手里备着一本 ...
- SYC极客大挑战部分题目writeup
Welcome 复制黏贴flag即可 我相信你正在与我相遇的路上马不停蹄 关注微信工作号回复"我要flag"即可获得flag 代号为geek的行动第一幕:毒雾初现 发现flag为摩 ...
- Java面试必问之Hashmap底层实现原理(JDK1.8)
1. 前言 上一篇从源码方面了解了JDK1.7中Hashmap的实现原理,可以看到其源码相对还是比较简单的.本篇笔者和大家一起学习下JDK1.8下Hashmap的实现.JDK1.8中对Hashmap做 ...
- yii2设置默认控制器
以Yii2高级模板配置为例