あなたの質問に直接答えたくないのですが、あなたがやろうとしていることは... 本当に混乱しているようです. Python には、物事を行うには非常に明確でクリーンな方法が必要であるという一種のルールがあるため、コードの一部が本当にファンキーに見える場合 (特にそのような単純な関数の場合)、それはおそらく正しいアプローチを使用していません。
名前のコンテナを作成したいだけなら、もっと簡単な方法がたくさんあります:
players=int(input("How many players?\n"))
player_names=set()
while len(player_names)<players:
player_names.add(input("What is player {}'s name?\n".format(len(player_names)+1)))
... 一意のプレーヤー名のセットが提供されますが、これは順序付けされません。それは問題になるかもしれません (あなたの実装は順序を保っていたので、そうかもしれません)。この場合でも、リストを使用して小さなチェックを追加して、新しい名前を追加していることを確認し、名前を繰り返し追加していないことを確認できます。
players=int(input("How many players?\n"))
player_names=list()
while len(player_names)<players:
playname=input("What is player {}'s name?\n".format(len(player_names)+1))
if playname not in player_names:
player_names.append(playname)
特に質問者がとったアプローチに目的/理由がある場合は、質問をかわすことについて誰かが私に口論することにオープンです。