莱斯大学Python课程第六周演示程序

第六周讲class

这个程序我照着屏幕上抄还抄错两个地方,花了好半天才发现是哪里抄错,中间还把注释删掉了。下次绝不会再犯这种错误。

 感觉用业余时间来学习这个课程时间很紧。


import simplegui
import random

WIDTH=600
HEIGHT=400
RADIUS=5
COLOR_LIST=["Teal","Orange","White","Yellow","Red","Brown"]
DIRECTION_LIST=[[1,0],[0,1],[-1,0],[0,-1]]


class Particle:
    
 def __init__(self, position, color):
     self.position = position
     self.color = color
        
 def move(self, offset):
     self.position[0]+= offset[0]
     self.position[1]+= offset[1]

 def draw(self, canvas):
     canvas.draw_circle(self.position, RADIUS,1,self.color,self.color)
 
 def __str__(self):
     return "P with position:"+ str(self.position)+ "and color:"+ self.color    

   
particle_list=[]
for i in range(200):
  p=Particle([WIDTH/2,HEIGHT/2],random.choice(COLOR_LIST))
  particle_list.append(p) 
 
  print p
  print type(p)   
    
  
    
def draw(canvas):
    for p in particle_list:
        p.move(random.choice(DIRECTION_LIST))
      
    for p in particle_list:
        p.draw(canvas)
      
        
        

frame = simplegui.create_frame("p",WIDTH,HEIGHT)
frame.set_draw_handler(draw)


frame.start()


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值