import random
actions = ["グー", "チョキ", "パー"]
def print_choices(user, pc):
pcs = zip(["PC{:d}".format(i+1) for i in range(len(pc))], pc)
print([("You", user)]+list(pcs))
n_pc = int(input("PCの数:"))
assert n_pc >= 1
while True:
pc_actions = [random.choice(actions) for _ in range(n_pc)]
action = input("じゃんけんぽん!\n> ")
print_choices(action, pc_actions)
act_set = set(pc_actions+[action])
if len(act_set) == 2:
break
else:
print("あいこ")
if (action == "グー" and "チョキ" in act_set) \
or (action == "チョキ" and "パー" in act_set) \
or (action == "パー" and "グー" in act_set):
print("You win!")
else:
print("You lose")
aW1wb3J0IHJhbmRvbQoKYWN0aW9ucyA9IFsi44Kw44O8IiwgIuODgeODp+OCrSIsICLjg5Hjg7wiXQoKZGVmIHByaW50X2Nob2ljZXModXNlciwgcGMpOgogICAgcGNzID0gemlwKFsiUEN7OmR9Ii5mb3JtYXQoaSsxKSBmb3IgaSBpbiByYW5nZShsZW4ocGMpKV0sIHBjKQogICAgcHJpbnQoWygiWW91IiwgdXNlcildK2xpc3QocGNzKSkKCm5fcGMgPSBpbnQoaW5wdXQoIlBD44Gu5pWw77yaIikpCmFzc2VydCBuX3BjID49IDEKCndoaWxlIFRydWU6CiAgICBwY19hY3Rpb25zID0gW3JhbmRvbS5jaG9pY2UoYWN0aW9ucykgZm9yIF8gaW4gcmFuZ2Uobl9wYyldCiAgICBhY3Rpb24gPSBpbnB1dCgi44GY44KD44KT44GR44KT44G944KT77yBXG4+ICIpCiAgICBwcmludF9jaG9pY2VzKGFjdGlvbiwgcGNfYWN0aW9ucykKCiAgICBhY3Rfc2V0ID0gc2V0KHBjX2FjdGlvbnMrW2FjdGlvbl0pCiAgICBpZiBsZW4oYWN0X3NldCkgPT0gMjoKICAgICAgICBicmVhawogICAgZWxzZToKICAgICAgICBwcmludCgi44GC44GE44GTIikKCmlmIChhY3Rpb24gPT0gIuOCsOODvCIgYW5kICLjg4Hjg6fjgq0iIGluIGFjdF9zZXQpIFwKICAgICAgICBvciAoYWN0aW9uID09ICLjg4Hjg6fjgq0iIGFuZCAi44OR44O8IiBpbiBhY3Rfc2V0KSBcCiAgICAgICAgb3IgKGFjdGlvbiA9PSAi44OR44O8IiBhbmQgIuOCsOODvCIgaW4gYWN0X3NldCk6CiAgICBwcmludCgiWW91IHdpbiEiKQplbHNlOgogICAgcHJpbnQoIllvdSBsb3NlIik=
PCの数:じゃんけんぽん!
> [('You', 'パー'), ('PC1', 'パー'), ('PC2', 'グー'), ('PC3', 'グー'), ('PC4', 'グー')]
You win!