程序员最近都爱上了这个网站  程序员们快来瞅瞅吧!  it98k网:it98k.com

本站消息

站长简介/公众号

  出租广告位,需要合作请联系站长

+关注
已关注

分类  

模块(0)

标准库(0)

标签  

标准库模块(0)

字符串(0)

日期归档  

Python 画一幅节日贺卡送给小姐姐们,祝女神节快乐~

发布于2019-08-07 12:40     阅读(1096)     评论(0)     点赞(2)     收藏(1)


 

        3.8女神节来临之际,一时兴起,画了一幅py贺卡,用视频软件处理了下加了背景音乐、滤镜和字幕,朋友很惊喜~感慨了下:为啥那些男程序猿就没有这样的觉悟(朋友的男票是程序猿)

        这里奉上代码给小伙伴们,可以稍作修改给身边人送个小小惊喜哦~

        (玫瑰花的代码copy自https://blog.csdn.net/qq_40390825/article/details/82501589

  1. import math
  2. import random
  3. import turtle as t
  4. list1=[]
  5. for i in range(5):
  6. list1.append(int(random.uniform(-500,500)))
  7. list2=[]
  8. for i in range(5):
  9. list2.append(int(random.uniform(-200,-50)))
  10. list3=[]
  11. for i in range(8):
  12. list3.append(int(random.uniform(-400,400)))
  13. list4=[]
  14. for i in range(8):
  15. list4.append(int(random.uniform(-150,-50)))
  16. list5=[]
  17. for i in range(7):
  18. list5.append(int(random.uniform(-300,300)))
  19. list6=[]
  20. for i in range(7):
  21. list6.append(int(random.uniform(-200,-100)))
  22. list7=[]
  23. for i in range(18):
  24. list7.append(int(random.uniform(-500,500)))
  25. list8=[]
  26. for i in range(18):
  27. list8.append(int(random.uniform(-100,100)))
  28. #绘制人名
  29. t.speed(0)
  30. t.penup()
  31. t.goto(-290,200)
  32. t.pendown()
  33. t.color("black")
  34. t.forward(30)
  35. t.backward(15)
  36. t.right(90)
  37. t.forward(45)
  38. t.penup()
  39. t.goto(-250,170)
  40. t.pendown()
  41. t.circle(15,180)
  42. t.forward(15)
  43. t.circle(15,180)
  44. t.forward(15)
  45. t.penup()
  46. t.goto(-200,190)
  47. t.pendown()
  48. t.fillcolor("black")
  49. t.begin_fill()
  50. t.pencolor("black")
  51. t.circle(3, 360)
  52. t.penup()
  53. t.goto(-200,170)
  54. t.pendown()
  55. t.circle(3,360)
  56. t.end_fill()
  57. t.penup()
  58. t.goto(-190,200)
  59. t.pendown()
  60. t.left(45)
  61. t.forward(25)
  62. t.penup()
  63. t.goto(-155,200)
  64. t.pendown()
  65. t.right(90)
  66. t.forward(25)
  67. t.left(45)
  68. t.forward(30)
  69. t.penup()
  70. t.goto(-150,170)
  71. t.pendown()
  72. t.circle(15,180)
  73. t.forward(15)
  74. t.circle(15,180)
  75. t.forward(15)
  76. t.penup()
  77. t.goto(-135,170)
  78. t.pendown()
  79. t.left(55)
  80. t.forward(25)
  81. t.penup()
  82. t.goto(0,0)
  83. t.left(35)#将画笔设置到初始化位置
  84. #画大号爱心(位置随机)
  85. for x,y in list(zip(list1,list2)):
  86. t.penup()
  87. t.goto(x, y)
  88. t.pendown()
  89. t.fillcolor("#FF6A6A")
  90. t.begin_fill()
  91. t.pencolor("#FF6A6A")
  92. t.forward(40)
  93. t.circle(20, 180)
  94. t.right(90)
  95. t.circle(20, 180)
  96. t.forward(40)
  97. t.end_fill()
  98. t.penup()
  99. t.goto(x, y)
  100. #画中号爱心(位置随机)
  101. for x,y in list(zip(list5,list6)):
  102. t.pendown()
  103. t.fillcolor("#FFA07A")
  104. t.begin_fill()
  105. t.pencolor("#FFA07A")
  106. t.forward(30)
  107. t.circle(15, 180)
  108. t.right(90)
  109. t.circle(15, 180)
  110. t.forward(30)
  111. t.end_fill()
  112. t.penup()
  113. t.goto(x, y)
  114. #画小号爱心(位置随机)
  115. for x,y in list(zip(list3,list4)):
  116. t.pendown()
  117. t.fillcolor("#FFD39B")
  118. t.begin_fill()
  119. t.pencolor("#FFD39B")
  120. t.forward(20)
  121. t.circle(10,180)
  122. t.right(90)
  123. t.circle(10,180)
  124. t.forward(20)
  125. t.end_fill()
  126. t.penup()
  127. t.goto(x, y)
  128. #画点点(位置随机)
  129. for x,y in list(zip(list7,list8)):
  130. t.pendown()
  131. t.fillcolor("#FF6A6A")
  132. t.begin_fill()
  133. t.pencolor("#FF6A6A")
  134. t.circle(3, 360)
  135. t.end_fill()
  136. t.penup()
  137. t.goto(x, y)
  138. def DegreeCurve(n, r, d=1):
  139. for i in range(n):
  140. t.left(d)
  141. t.circle(r, abs(d))
  142. # 初始位置设定
  143. s = 0.2
  144. # t.setup(450*5*s, 750*5*s)
  145. t.pencolor("black")
  146. t.fillcolor("#FF4040")
  147. t.speed(100)
  148. t.penup()
  149. t.goto(0, 900*s)
  150. t.pendown()
  151. # 绘制花朵形状
  152. t.begin_fill()
  153. t.circle(200*s,30)
  154. DegreeCurve(60, 50*s)
  155. t.circle(200*s,30)
  156. DegreeCurve(4, 100*s)
  157. t.circle(200*s,50)
  158. DegreeCurve(50, 50*s)
  159. t.circle(350*s,65)
  160. DegreeCurve(40, 70*s)
  161. t.circle(150*s,50)
  162. DegreeCurve(20, 50*s, -1)
  163. t.circle(400*s,60)
  164. DegreeCurve(18, 50*s)
  165. t.fd(250*s)
  166. t.right(150)
  167. t.circle(-500*s,12)
  168. t.left(140)
  169. t.circle(550*s,110)
  170. t.left(27)
  171. t.circle(650*s,100)
  172. t.left(130)
  173. t.circle(-300*s,20)
  174. t.right(123)
  175. t.circle(220*s,57)
  176. t.end_fill()
  177. # 绘制花枝形状
  178. t.left(120)
  179. t.fd(280*s)
  180. t.left(115)
  181. t.circle(300*s,33)
  182. t.left(180)
  183. t.circle(-300*s,33)
  184. DegreeCurve(70, 225*s, -1)
  185. t.circle(350*s,104)
  186. t.left(90)
  187. t.circle(200*s,105)
  188. t.circle(-500*s,63)
  189. t.penup()
  190. t.goto(170*s,-30*s)
  191. t.pendown()
  192. t.left(160)
  193. DegreeCurve(20, 2500*s)
  194. DegreeCurve(220, 250*s, -1)
  195. # 绘制一个绿色叶子
  196. t.fillcolor('#00CD00')
  197. t.penup()
  198. t.goto(670*s,-180*s)
  199. t.pendown()
  200. t.right(140)
  201. t.begin_fill()
  202. t.circle(300*s,120)
  203. t.left(60)
  204. t.circle(300*s,120)
  205. t.end_fill()
  206. t.penup()
  207. t.goto(180*s,-550*s)
  208. t.pendown()
  209. t.right(85)
  210. t.circle(600*s,40)
  211. # 绘制另一个绿色叶子
  212. t.penup()
  213. t.goto(-150*s,-1000*s)
  214. t.pendown()
  215. t.begin_fill()
  216. t.rt(120)
  217. t.circle(300*s,115)
  218. t.left(75)
  219. t.circle(300*s,100)
  220. t.end_fill()
  221. t.penup()
  222. t.goto(430*s,-1070*s)
  223. t.pendown()
  224. t.right(30)
  225. t.circle(-600*s,35)
  226. t.done()

以下是录制的慢动作运行图,可以清楚看到绘画轨迹:

 



所属网站分类: 技术文章 > 博客

作者:追梦骚年

链接:https://www.pythonheidong.com/blog/article/10919/059e55f2bc2d05fda21d/

来源:python黑洞网

任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任

2 0
收藏该文
已收藏

评论内容:(最多支持255个字符)