import random

a = list(range(10))

answer = random.sample(a, 4)

print(f'答案: {answer[0]}{answer[1]}{answer[2]}{answer[3]}')

guess_count = 0

while True:
    user = input('請猜0~9之間的四位數(不可以重覆): ')
    guess_count += 1
    print(f'已經猜了{guess_count}次')
    
    try:
        int(user)
    except ValueError:
        print('只能輸入數字, 請重新輸入')
        continue
    
    if len(user) != 4:
        print('只能輸入四個數字, 請重新輸入')
        continue

    if len(set(user)) != 4:
        print('數字不可重覆, 請重新輸入')
        continue

    b = []
    for i in user:
        b.append(int(i))

    if answer == b:
        print('猜對了')

        break
    
    how_many_A = 0

    if answer[0] == b[0]:
        how_many_A += 1

    if answer[1] == b[1]:
        how_many_A += 1

    if answer[2] == b[2]:
        how_many_A += 1

    if answer[3] == b[3]:
        how_many_A += 1

    how_many_B = 0

    if b[0] in answer and b[0] != answer[0]:
        how_many_B += 1

    if b[1] in answer and b[1] != answer[1]:
        how_many_B += 1

    if b[2] in answer and b[2] != answer[2]:
        how_many_B += 1

    if b[3] in answer and b[3] != answer[3]:
        how_many_B += 1
    
    print(f'{how_many_A}A{how_many_B}B')