鱼C论坛

 找回密码
 立即注册
查看: 1072|回复: 5

[已解决]类和对象的问题

[复制链接]
发表于 2018-3-22 11:53:46 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
  1. import random as r

  2. legal_x = [0, 10]
  3. legal_y = [0, 10]

  4. class Turtle:
  5.     def __init__(self):
  6.         # 初始体力
  7.         self.power = 100
  8.         # 初始位置随机
  9.         self.x = r.randint(legal_x[0], legal_x[1])
  10.         self.y = r.randint(legal_y[0], legal_y[1])

  11.     def move(self):
  12.         # 随机计算方向并移动到新的位置(x, y)
  13.         new_x = self.x + r.choice([1, 2, -1, -2])
  14.         new_y = self.y + r.choice([1, 2, -1, -2])
  15.         # 检查移动后是否超出场景x轴边界
  16.         if new_x < legal_x[0]:
  17.             self.x = legal_x[0] - (new_x - legal_x[0])
  18.         elif new_x > legal_x[1]:
  19.             self.x = legal_x[1] - (new_x - legal_x[1])
  20.         else:
  21.             self.x = new_x
  22.         # 检查移动后是否超出场景y轴边界
  23.         if new_y < legal_y[0]:
  24.             self.y = legal_y[0] - (new_y - legal_y[0])
  25.         elif new_y > legal_y[1]:
  26.             self.y = legal_y[1] - (new_y - legal_y[1])
  27.         else:
  28.             self.y = new_y        
  29.         # 体力消耗
  30.         self.power -= 1
  31.         # 返回移动后的新位置
  32.         return (self.x, self.y)

  33.     def eat(self):
  34.         self.power += 20
  35.         if self.power > 100:
  36.             self.power = 100
复制代码



问下初始位置legal_x[0], legal_x[1]里面的0,1表示的是位置还是?还有那个界定有无出界的代码具体怎么解释?
最佳答案
2018-3-22 12:42:43
Binke 发表于 2018-3-22 12:35
这个我知道,我想问的是后面[]里面的0和1的意思

就是取出下标为0和1的元素,也就是第一个值0和第二个值10
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2018-3-22 12:13:03 | 显示全部楼层
legal_x和legal_y分别表示x方向和y方向的范围,都是0~10
其中0在x方向表示左边边界,10为右边边界
      0在y方向表示上边界,10为下边界
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-22 12:35:35 | 显示全部楼层
BngThea 发表于 2018-3-22 12:13
legal_x和legal_y分别表示x方向和y方向的范围,都是0~10
其中0在x方向表示左边边界,10为右边边界
      ...

这个我知道,我想问的是后面[]里面的0和1的意思
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-22 12:42:43 | 显示全部楼层    本楼为最佳答案   
Binke 发表于 2018-3-22 12:35
这个我知道,我想问的是后面[]里面的0和1的意思

就是取出下标为0和1的元素,也就是第一个值0和第二个值10
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2018-3-22 21:28:20 | 显示全部楼层
BngThea 发表于 2018-3-22 12:42
就是取出下标为0和1的元素,也就是第一个值0和第二个值10

原来如此,谢谢了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2018-3-23 08:06:44 From FishC Mobile | 显示全部楼层
Binke 发表于 2018-3-22 21:28
原来如此,谢谢了

解决了就给个最佳
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-5-19 04:50

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表