[英]Asking player numbers then assigning player names to them
我想先問有多少玩家,然后根據他們玩游戲的玩家數量,我想循環並詢問他們的名字作為輸入,然后將其分配給他們的玩家編號。 第一:它會詢問玩家號碼第二:它會詢問他們的名字第三:然后它將他們的名字創建為變量
這是我嘗試過的,但它正在返回:
player_nums =int(input("how many players are there? "))
playernum = True
while playernum:
if player_nums >7 or player_nums == 0 :
print( "there cant be more than 7 players")
print("please entre the player numbers again")
player_nums =int(input("how many players are there? "))
elif player_nums == 6 :
player_one = input("please write ur name playerone")
player_two = input("please write ur name playerone")
player_three = input("please write ur name playerone")
player_four = input("please write ur name playerone")
player_five = input("please write ur name playerone")
player_six = input("please write ur name playerone")
playernum = False
elif playernum ==5:
player_one = input("please write ur name playerone")
player_two = input("please write ur name playerone")
player_three = input("please write ur name playerone")
player_four = input("please write ur name playerone")
player_five = input("please write ur name playerone")
playernum = False
elif playernum ==4:
player_one = input("please write ur name playerone")
player_two = input("please write ur name playerone")
player_three = input("please write ur name playerone")
player_four = input("please write ur name playerone")
playernum = False
elif playernum == 3:
player_one = input("please write ur name playerone")
player_two = input("please write ur name playerone")
player_three = input("please write ur name playerone")
playernum = False
elif playernum ==2:
player_one = input("please write ur name playerone")
player_two = input("please write ur name playerone")
elif playernum == 1:
player_one = input("please write ur name playerone")
playernum = False
else:
continue
print(player_one)
這是我嘗試過的另一種方法,但它不起作用,我不知道它是如何不起作用的:
class Player:
def __init__(self,name):
self.name= name
def new_name(self):
self.new_names = input('what is your name')
def __str__(self):
return self.name_names
user = Player("")
player_nums =int(input("how many players are there? "))
playernum = True
while playernum:
if player_nums >7 or player_nums == 0 :
print( "there cant be more than 7 players")
print("please entre the player numbers again")
player_nums =int(input("how many players are there? "))
else:
for i in range(1,player_nums):
user = Player.new_name(user)
print(user.new_name)
我想循環播放玩家編號以將個人名稱分配給他們的玩家編號,例如,如果有 5 個玩家,玩家 1:輸入(他的名字)玩家 2:輸入(他的名字)等
您所寫的問題非常令人困惑,但據我所知,您想要:
詢問有多少玩家參與(0 < n <=7)。 對於每個已識別的玩家,將名稱與玩家編號相關聯。 為了以有序、整潔和高效的方式執行此任務,您應該利用 python 中可用的固有數據結構。
def start_game():
while plyr_count := int(input('How Many Players are there? ')):
if plyr_count <= 7:
break
print('Number of players must be less than or equal to 7, try again')
players = []
for i in range(plyr_count):
players.append(input(f"Enter Player {i+1}'s name "))
return players
那么在執行start_game的時候,你會得到:有多少玩家? 12 玩家人數必須小於等於7,再試一次
How Many Players are there? 4
Enter Player 1's name Bob
Enter Player 2's name Tom
Enter Player 3's name Judy
Enter Player 4's name Nancy
['Bob', 'Tom', 'Judy', 'Nancy']
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.