3 回答

TA貢獻1802條經(jīng)驗 獲得超4個贊
如果您希望用戶重試該條目,您可以使用如下內(nèi)容:
print("Team 1 player input")
elem = int(input("Amount of players: "))
for i in range(0, elem):
p = None
while not p or p in Team1_list:
p = input(f'Enter player number {num_team1} name (In batting order) eg J.Smith: ')
if p in Team1_list: print('That player already entered, please retry...')
Team1_list.append(p)
num_team1 = num_team1 + 1
print(Team1_list)

TA貢獻2003條經(jīng)驗 獲得超2個贊
使用setwith 集{}
no_duplicates = {1, 2, 1, 3, 2}
print(no_duplicates)
{1, 2, 3}

TA貢獻1780條經(jīng)驗 獲得超5個贊
如果您使用的是 Python 3.6+,您將受益于dict按鍵記住您的插入順序。因此,您可以同時受益于list和。set考慮以下:
#Team 1 naming
print("Team 1 player input")
elem = int(input("Amount of players: "))
team = {}
while len(team) < elem:
num_team1 = len(team)+1
name = str(input(f'Enter player number {num_team1} name (In batting order) eg J.Smith: ')))
team[name] = 1
print(list(team.keys()))
如果您再次輸入相同的名稱,您的num_team1名稱將不會增加,并且您的“列表”將忽略該重復的條目(即僅保留第一個條目的原始順序)
添加回答
舉報