我被困在一个名为'罢工或球'的游戏中
出现了IndexError。
这有一个非常简单的规则。 如果我输入三个数字类型为'str'的数字,则将其与'random'制作的另外三个数字进行比较。
(“123”,“472”)[0,1]
(“742”,“472”)[1,2]
(“472”,“472”)[3,0]
这是一些例子。
这是我的尝试,当然,这是错误的......
def get_strikes_or_ball(user_input_number, random_number):
a = str(user_input_number)
b = str(random_number)
c = [val for val in a if val in b]
i = 0
strike = 0
ball = 0
while c:
if a[i] == b[i]:
strikes = strikes + 1
elif a[i] == b[i+1]:
ball = ball + 1
elif a[i] == b[e+2]:
ball = ball + 1
result = str('strike : ', strike," ", 'ball : ', ball)
# ==================================
return result
答案 0 :(得分:0)
如果我理解正确你想要计算a中有多少个数字也在b中的相同位置(打击)或其他位置(球)。如果这是正确的,应该这样做:
Dictionary<TestType, List<TestCase>> dataAsDictionary =
data.GroupBy(x => x.TestType)
.ToDictionary(k => k.Key, v => v.Select( f=>
new TestCase() { Id = f.Id }).ToList());