|
|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
请问一下,每次调用类的属性,产生的结果为什么都一样?例如:调用程序一次。listfish中数据是完全一样的[(2,3),(2,3),(2,3)......]我想要listfish随机产生10个不同的数据。谢谢
class fish:
xfish = random.randint(0,10)
yfish = random.randint(0,10)
def move(self):
direction = random.randint(0,3)#0:向上移动;1:向右;2:向下;3:向左
step = 1
if direction == 0:
self.yfish += step
if direction == 1:
self.xfish += step
if direction == 2:
self.yfish -= step
if direction == 3:
self.xfish -= step
return(self.xfish,self.yfish)
poistion1= fish()
listfish=[]
for i in range(10):
xt=poistion1.xfish
yt=poistion1.yfish
listfish.append((xt,yt))
print(listfish)
你那样子写的话 xfish 和 yfish 是属于类的,不是属于对象的,它们的值在类创建好的时候就已经定下来了,所有的实例化对象都共用类属性,所以都是一样的值。
|
|