Python 练习实例59

简介: Python 练习实例59

题目:画图,综合例子。  

程序分析:利用for循环控制100-999个数,每个数分解出个位,十位,百位。。

程序源代码:

#!/usr/bin/python

# -*- coding: UTF-8 -*-


if __name__  == '__main__':

   from Tkinter import *

   canvas = Canvas(width = 300,height = 300,bg = 'green')

   canvas.pack(expand = YES,fill = BOTH)

   x0 = 150

   y0 = 100

   canvas.create_oval(x0 - 10,y0 - 10,x0 + 10,y0 + 10)

   canvas.create_oval(x0 - 20,y0 - 20,x0 + 20,y0 + 20)

   canvas.create_oval(x0 - 50,y0 - 50,x0 + 50,y0 + 50)

   import math

   B = 0.809

   for i in range(16):

       a = 2 * math.pi / 16 * i

       x = math.ceil(x0 + 48 * math.cos(a))

       y = math.ceil(y0 + 48 * math.sin(a) * B)

       canvas.create_line(x0,y0,x,y,fill = 'red')

   canvas.create_oval(x0 - 60,y0 - 60,x0 + 60,y0 + 60)

   


   for k in range(501):

       for i in range(17):

           a = (2 * math.pi / 16) * i + (2 * math.pi / 180) * k

           x = math.ceil(x0 + 48 * math.cos(a))

           y = math.ceil(y0 + 48 + math.sin(a) * B)

           canvas.create_line(x0,y0,x,y,fill = 'red')

       for j in range(51):

           a = (2 * math.pi / 16) * i + (2* math.pi / 180) * k - 1

           x = math.ceil(x0 + 48 * math.cos(a))

           y = math.ceil(y0 + 48 * math.sin(a) * B)

           canvas.create_line(x0,y0,x,y,fill = 'red')

   mainloop()

以上实例输出结果为:

相关文章
|
2天前
|
前端开发 Python
Python 练习实例58
Python 练习实例58
|
2天前
|
前端开发 Python
Python 练习实例57
Python 练习实例57
|
2天前
|
前端开发 Python
Python 练习实例56
Python 练习实例56
|
1天前
|
人工智能 Python
Python 练习实例61
Python 练习实例61
|
1天前
|
人工智能 Python
Python 练习实例60
Python 练习实例60
|
7天前
|
Python
Python 练习实例48
Python 练习实例48
|
5天前
|
Python
Python 练习实例53
Python 练习实例53
|
6天前
|
Python
Python 练习实例49
Python 练习实例49
|
7天前
|
Python
Python 练习实例47
Python 练习实例47
|
6天前
|
Python
Python 练习实例51
Python 练习实例51