内容主要是codewar练习的成果 自己写得以及自己看得懂的觉得写得好的解答
目的是为了自己哪天懈怠后回来複习使用 不定时更新!
路径简化
INPUT:未知的路线提示,有些是矛盾的,比如往南再往北、往东再往西
OUTPUT:简化后的路线提示
["NORTH", "SOUTH", "SOUTH", "EAST", "WEST", "NORTH", "WEST"]
数字字母过滤
从list中过滤掉字母及负数
def filterlist(l):
k=[i for i in l if isinstance(i,int)] #过滤掉字母
return [j for j in k if j>=0]
游戏对打
已知一个建好的class,当中包含名字、血量、每一次攻击。
题目是定义出一个function来判断两个人互打谁最后赢了。攻守互换那句很关键也很精采。
def declare_winner(fighter1, fighter2, first_attacker):
cur, opp=(fighter1, fighter2) if first_attacker == fighter1.name else (fighter2, fighter1)
while cur.health>0:
opp.health -= cur.damage_per_attack
cur, opp = opp, cur
return opp.name
Class 牛刀小试
class Ball(object):
def init(self,type='regular'):
self.ball_type=type