class CricketScorecard:
def __init__(self, team_name):
self.team_name = team_name
self.players = []
self.runs = []
self.total_overs = 0.0
def add_player(self, player_name):
self.players.append(player_name)
self.runs.append(0)
def update_player_stats(self, player_name, runs):
index = self.players.index(player_name)
self.runs[index] = runs
def set_total_overs(self, total_overs):
self.total_overs = total_overs
def display_scorecard(self):
print(f"Scorecard for Team: {self.team_name}")
print(f"{'Player':<20} {'Runs':<10}")
for i in range(len(self.players)):
print(f"{self.players[i]:<20} {self.runs[i]:<10}")
print(f"Total Runs: {sum(self.runs)}")
print(f"Total Overs: {self.total_overs}\n")
def input_match_details():
# Input the match details
team1_name = input("Enter the name of Team 1: ")
team2_name = input("Enter the name of Team 2: ")
team1 = CricketScorecard(team1_name)
team2 = CricketScorecard(team2_name)
# Add players for Team 1
print(f"Enter players for {team1_name}:")
for i in range(11):
player = input(f"Enter player {i+1} name: ")
team1.add_player(player)
# Add players for Team 2
print(f"Enter players for {team2_name}:")
for i in range(11):
player = input(f"Enter player {i+1} name: ")
team2.add_player(player)
# Update stats for Team 1
print(f"\nEnter runs for {team1_name}:")
for player in team1.players:
runs = int(input(f"Enter runs for {player}: "))
team1.update_player_stats(player, runs)
# Update stats for Team 2
print(f"\nEnter runs for {team2_name}:")
for player in team2.players:
runs = int(input(f"Enter runs for {player}: "))
team2.update_player_stats(player, runs)
# Input total overs for each team
total_overs1 = float(input(f"\nEnter total overs for {team1_name}: "))
total_overs2 = float(input(f"\nEnter total overs for {team2_name}: "))
team1.set_total_overs(total_overs1)
team2.set_total_overs(total_overs2)
# Display Scorecards
team1.display_scorecard()
team2.display_scorecard()
# Start the program
input_match_details()