鱼C论坛

 找回密码
 立即注册
查看: 508|回复: 3

如何把这个代码压缩到只要4行就可以解决问题。

[复制链接]
发表于 2020-4-5 00:01:50 | 显示全部楼层 |阅读模式

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

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

x
#如何把这个代码压缩到只要4行就可以执行一样的效果。只要用python就行。

Flyer[0].step(2)
Flyer[2].step(1)
Flyer[4].step(2)
Flyer[8].step(3)
Spaceship.step(1)
Spaceship.turnRight()
Spaceship.step(3)
Spaceship.turnRight()
Spaceship.turnRight()
Spaceship.step(3)
Spaceship.turnRight()
Spaceship.step(4)
Spaceship.turnRight()
Spaceship.step(2)
Spaceship.turnRight()
Spaceship.turnRight()
Spaceship.step(2)
Spaceship.turnRight()
Spaceship.step(4)
Spaceship.turnRight()
Spaceship.step(3)
Spaceship.turnRight()
Spaceship.turnRight()
Spaceship.step(3)
Spaceship.turnRight()
Spaceship.step(2)
Spaceship.turnRight()
Spaceship.step(2)
Spaceship.turnRight()
Spaceship.turnRight()
Spaceship.step(2)
Spaceship.turnRight()
Spaceship.step(2)
Spaceship.turnRight()
Spaceship.step(2)
Spaceship.turnRight()
Spaceship.turnRight()
Spaceship.step(2)
Spaceship.turnRight()
Spaceship.step(4)
Spaceship.turnRight()
Spaceship.step(4)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-4-5 00:20:08 | 显示全部楼层
你确定可以???

拭目以待。感觉无能为力!

用循环一句,加变量需要两句(赋初值一句,根据条件变换一句),再加上另外的。
楼主,建议你在每句代码后面加分号,这样看起来 是一句就能解决啦。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-4-5 02:35:12 | 显示全部楼层
抛砖引玉,前4行的实现没想出方法,我不知道python里能实现这样的语句吗:Flyer[0].step(2),看看有没有高手能告知一二。后面的想了个办法,用一个字符串作为数据索引,下面代码模拟一个环境,只运算前10行,给大家参考(本来可以遍历字符串本身,代码会简单点,后来考虑前4行的实现,就改成了数字索引):
class SpaceShip:
    def step(self,s):
        print('step ',s)

    def turnRight(self):
        print('turnright')
       
Spaceship=SpaceShip()


s='1R3RR3R4R2'
for i in range(len(s)):
    Spaceship.step(int(s[i])) if s[i].isdigit() else Spaceship.turnRight()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-4-5 11:01:03 | 显示全部楼层
这个代码就是。一个小程序里来控制里面游戏人物行动的。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-25 23:53

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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