1.颜色对照表
import xlwt
# 1. 准备数据
data = xlwt.Style.colour_map
print(data)
# 2. 准备工作表
wb = xlwt.Workbook()
sheet = wb.add_sheet('颜色对照表')
# 3. 将数据写入到工作表中
# 1)================写入第一行数据================
line1 = ['颜色', '颜色单词', '颜色值']
style1 = xlwt.XFStyle()
# 设置字体样式
font1 = xlwt.Font()
style1.font = font1
font1.name = '黑体'
font1.bold = True
font1.height = 16 * 16
# 设置对齐方式
alignment1 = xlwt.Alignment()
style1.alignment = alignment1
alignment1.vert = xlwt.Alignment.VERT_CENTER
alignment1.horz = xlwt.Alignment.HORZ_CENTER
# 设置边框
border = xlwt.Borders()
style1.borders = border
border.left = border.right = border.top = border.bottom = 1
border.left_colour = border.right_colour = border.top_colour = border.bottom_colour = 8
# 设置第一行的高度
sheet.row(0).height_mismatch = True
sheet.row(0).height = 10 * 60
for col in range(len(line1)):
# 设置每一列的宽度
sheet.col(col).width = 20 * 256
# 写入数据
sheet.write(0, col, line1[col], style1)
# 2)===============写入颜色数据====================
# 准备样式
style2 = xlwt.XFStyle()
font2 = xlwt.Font()
style2.font = font2
font2.height = 14 * 14
style2.alignment = alignment1
style2.borders = border
# 写入数据
row = 1
for key in data:
value = data[key]
# 第一列单元格的样式
style3 = xlwt.XFStyle()
style3.borders = border
pattern = xlwt.Pattern()
style3.pattern = pattern
pattern.pattern = xlwt.Pattern.SOLID_PATTERN
pattern.pattern_fore_colour = value
# 写入数据
sheet.write(row, 0, '', style3)
sheet.write(row, 1, key, style2)
sheet.write(row, 2, value, style2)
# 设置行高
sheet.row(row).height_mismatch = True
sheet.row(row).height = 10 * 60
row += 1
wb.save('files/颜色.xls')
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-q8FIMfCj-1682512900635)(C:\Users\86152\Desktop\捕获.PNG)]
2. turtle基本用法
import turtle
#1.控制画布
#1)设置画框的大小
turtle.setup(800,600)
#2)设置画布的颜色,颜色(画布背景颜色) 不设置,默认画布与画框一样大
#颜色设置方式(不设置,一般默认白色):颜色单词/rgb颜色表(好像不行)/十六进制颜色值 LightPink 浅粉色 #FFB6C1
turtle.screensize(800,600,'white')
#3)设置标题
turtle.title('有点子困了')
#2.设置画笔
#1)设置画笔的颜色(控制画出来的线的颜色)
turtle.pencolor('red')
#turtle.pencolor('#4B0082')
#2)设置笔的粗细(设置线的粗细)
turtle.width(5)
#3)设置笔移动的速度
#速度值1~10,值越大速度越快;如果速度值为0,速度最快
turtle.speed(5)
#3.控制笔的移动
#1)前进和后退 默认起始点在坐标轴中心,向右前进
turtle.forward(200)
turtle.goto(100,100)
turtle.goto(0,0)
#后退时重新设置画线
'''
turtle.pencolor('blue')
turtle.width(1)
turtle.back(150)
'''
#2)控制笔移动到指定坐标
turtle.sety(-100) #只设置了y轴的值,直接向上走
#设置x轴坐标
turtle.setx(150)
turtle.sety(-70)
turtle.forward(20)
turtle.sety(-100)
turtle.forward(30)
turtle.sety(0)
turtle.pencolor('red')
turtle.width(5)
turtle.speed(5)
turtle.goto(0,0)
turtle.sety(-100)
turtle.setx(200)
turtle.pencolor('red')
turtle.width(5)
turtle.speed(5)
turtle.up()
turtle.goto(-10,-10)
turtle.setx(20)
turtle.down()
turtle.forward(40)
turtle.sety(-50)
turtle.back(40)
turtle.sety(-10)
turtle.up()
turtle.goto(20,-30)
turtle.down()
turtle.forward(40)
turtle.up()
turtle.goto(40,-10)
turtle.down()
turtle.sety(-50)
#4.笔的抬起和放下
#让画布不自动关闭 一直运行 一般放在程序最后
turtle.mainloop()
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-QW4FLKFE-1682512900637)(C:\Users\86152\Desktop\基本.PNG)]
3. turtle的旋转和循环基本应用
import turtle
turtle.setup(800,700)
turtle.screensize(800,700,'white')
turtle.width(5)
turtle.color('green')
turtle.speed(5)
#==============重复画一条线==========================
'''
for x in range(20):
turtle.forward(100)
turtle.goto(0, 0)
turtle.left(18)
'''
'''
#=====================重复画三角形======================
for x in range(12):
turtle.forward(120)
turtle.left(30)
turtle.forward(200)
turtle.goto(0,0)
'''
#======================重复画圆========================
'''
from random import randint #随机取颜色
for x in range(20):
turtle.pencolor(randint(0,255)/255,randint(0,255)/255,randint(0,255)/255)
turtle.circle(100)
turtle.left(18)
'''
'''
for x in range(20):
turtle.forward(100)
turtle.goto(100,100)
turtle.goto(0,100)
turtle.goto(0,0)
turtle.left(18)
'''
from random import randint
for x in range(9):
turtle.pencolor(randint(0, 255) / 255, randint(0, 255) / 255, randint(0, 255) / 255)
turtle.circle(100, 30)
turtle.left(10)
turtle.mainloop()
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BdykmF8Z-1682512900637)(C:\Users\86152\Desktop\旋转.PNG)]
4. turtle的曲线基本用法
#画曲线原理,笔前进的同时不断改变笔的方向
import time
import turtle
turtle.setup(800,600)
turtle.width(4)
turtle.pencolor('red')
turtle.speed(10)
for _ in range(100):
turtle.forward(2)
turtle.left(3)
time.sleep(1)
for _ in range(100):
turtle.forward(2)
turtle.right(3)
time.sleep(1)
turtle.setheading(130)
for _ in range(300):
turtle.forward(2)
turtle.left(1)
turtle.mainloop()
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dxKmKado-1682512900638)(C:\Users\86152\Desktop\曲线.PNG)]
4.1 turtle曲线练习
import time
import turtle
turtle.setup(800,600)
turtle.width(4)
turtle.pencolor('yellow')
turtle.speed(0)
turtle.setheading(130)
for _ in range(210):
turtle.forward(2)
turtle.left(1)
turtle.up()
turtle.goto(0,0)
turtle.down()
turtle.setheading(160)
for _ in range(150):
turtle.forward(2)
turtle.left(1)
turtle.mainloop()
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qd4YZWok-1682512900638)(C:\Users\86152\Desktop\月亮.PNG)]
5. turtle填充和写文字
import turtle
turtle.setup(800,600)
turtle.width(3)
#1.填充
#填充之前必须先有图形轮廓代码,然后在轮廓代码的前面开始填充,轮廓代码的后面结束填充
#1)设置填充颜色
turtle.fillcolor('blue')
#2)开始填充
turtle.begin_fill()
#3)轮廓代码
turtle.forward(100)
turtle.left(120)
turtle.forward(120)
turtle.goto(0,0)
#4)结束填充
turtle.end_fill()
print('------------------------------------------分割线------------------------------------------------------------')
turtle.fillcolor('yellow')
turtle.begin_fill()
turtle.back(100)
turtle.left(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.end_fill()
#2.写文字
#turtle.write(文字内容,是否移动笔,对齐方式,font=(字体名称,字体大小)) 笔在哪,就在哪儿开始写
turtle.up()
turtle.goto(-50,-50)
turtle.down()
#控制笔的颜色,就可以控制文字的颜色
turtle.pencolor('green')
turtle.write('hello',True,'center',font=('楷体',20))
turtle.mainloop()
.right(90)
turtle.forward(100)
turtle.right(90)
turtle.forward(100)
turtle.end_fill()
#2.写文字
#turtle.write(文字内容,是否移动笔,对齐方式,font=(字体名称,字体大小)) 笔在哪,就在哪儿开始写
turtle.up()
turtle.goto(-50,-50)
turtle.down()
#控制笔的颜色,就可以控制文字的颜色
turtle.pencolor(‘green’)
turtle.write(‘hello’,True,‘center’,font=(‘楷体’,20))
turtle.mainloop()
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wDCvxjDC-1682512900639)(C:\Users\86152\Desktop\文字.PNG)]