|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 bananatree 于 2020-3-15 17:12 编辑
大佬们,我自己写的那个简陋的程序里,总是报错一个相同的问题,我也不知道怎么回事儿
import random
def confine(point):
if point>10:
return 10-(point-10)
if point<0:
return 0+(0-point)
class Turtle:
def initial(self):
self.x=random.randint(0,11)
self.y=random.randint(0,11)
return [self.x,self.y]
def move(self):
pace=random.randint(1,3)
choiceorient=random.randint(1,3)
if choiceorient==1:
xorient=random.randint(1,3)
if xorient==1:
self.x+=pace
else:
self.x-=pace
self.x=confine(self.x)
else:
yorient=random.randint(1,3)
if yorient==1:
self.y-=pace
else:
self.y-=pace
self.y=confine(self.y)
return [self.x,self.y]
class Fish:
def initial(self):
self.x=random.randint(0,11)
self.y=random.randint(0,11)
return [self.x,self.y]
def move(self,x,y):
choiceorient=random.randint(1,3)
if choiceorient==1:
xorient=random.randint(1,3)
if xorient==1:
x+=1
else:
x-=1
x=confine(x)
else:
yorient=random.randint(1,3)
if yorient==1:
y+=1
else:
y-=1
y=confine(y)
return [x,y]
gui=Turtle()
yu=Fish()
yudict=dict()
for i in range(1,11):
yudict.setdefault(i,yu.initial())
gp=gui.initial()
energy=100
while energy:
for each in yudict.keys():
if yudict[each]==gp:
energy+=20
yudict.pop(each)
print('鱼少了一条')
gp=gui.move()
if yudict=={}:
print('鱼没了')
else:
for i in yudict.keys():
yudict[i]=yu.move(yudict[i][0],yudict[i][1])
break
else:
gp=gui.move()
for each in yudict.keys():
yudict[each]=yu.move(yudict[i][0],yudict[i][1])
if energy==0:
print('乌龟死了')
|
-
总是说我的类型错误,不都是整形吗
-
这个时相关问题描述
-
-
practice.zip
707 Bytes, 下载次数: 3
乌龟吃鱼的py
|