Baseball Fun With Classes Solution

$30.00

Description

Part 2

  1. Your first task is to create a function with one parameter (a file name) that reads each line of data and creates a PlayersYear object from that line, then places it in a list. After all lines are read, this list of PlayersYear objects is returned to the main function.

  1. Next, create a function with one parameter (the list of PlayersYear objects) to display all the players in a table proceeded by heading1.

  1. Next, create a function with one parameter (the list of PlayersYear objects) to display the averages of each player in a table proceeded by heading2.

  1. Next, create a function to get the key that permits sorting on the number of homeruns a player hits. This function has one parameter, (a Player object). This function returns the number of home runs hit by this PlayersYear object.

  1. Next, create a function with one parameter (the list of PlayersYear objects) that sorts this list with respect to home runs.

  1. Next, create a function to get the key that permits sorting on the number of at bats. This function has one parameter, (a Player object). This function returns the number of at bats of this PlayersYear object.

  1. Next, create a function with one parameter (the list of PlayersYear objects) that sorts this list with respect to at bats.

  1. Finally, the main() function (is where the functions are called) is described by the comments below:

    • Ask user to enter file’s name

    • Read the data from the file, return a list of PlayersYear objects

    • Display all stats of the players (heading1)

    • Display all averages (heading2)

    • Display all stats of the players sorted by homer

(heading1)

  • Display all stats of the players sorted by at bats (heading1)

  • Display all averages sorted from highest to lowest slugging percentage (heading2)

Deliverables:

Zip together, the files PlayersYear.py, assign4.py, baseball.txt, and

dimaggio.txt. Don’t forget to document each function!

Here are some outputs:

All players in file order:

————————————————————————————-

Player Year AB S D T HR BA SLG

————————————————————————————-

Hank Aaron

1971

495

90

22

3

47

0.327

0.669

Barry Bonds

2002

403

70

31

2

46

0.370

0.799

Rod Carew

1974

599

180

30

5

3

0.364

0.446

Ty Cobb

1912

553

166

30

23

7

0.409

0.584

Joe DiMaggio

1937

621

119

35

15

46

0.346

0.673

Mickey Mantle

1956

533

109

22

5

52

0.353

0.705

Roger Maris

1961

590

78

16

4

61

0.269

0.620

Willie Mays

1963

596

110

32

7

38

0.314

0.582

Wilbur Stargell

1978

390

67

18

2

28

0.295

0.567

Ted Williams

1957

420

96

28

1

38

0.388

0.731

Babe Ruth

1920

457

73

36

9

54

0.376

0.849

Bill Mazeroski

1960

538

110

21

5

11

0.273

0.392

Frank Gustine

1941

463

93

24

7

1

0.270

0.359

Thurman Munson

1975

597

151

24

3

12

0.318

0.429

Orlando Cepada

1967

563

121

37

0

25

0.325

0.524

All averages in file order:

———————————————

Player

Slugging %

Year

———————————————

Joe DiMaggio

0.576

1936

Joe DiMaggio

0.673

1937

Joe DiMaggio

0.527

1938

Joe DiMaggio

0.592

1939

Joe DiMaggio

0.556

1940

Joe DiMaggio

0.559

1941

Joe DiMaggio

0.447

1942

Joe DiMaggio

0.453

1946

Joe DiMaggio

0.464

1947

Joe DiMaggio

0.531

1948

Joe DiMaggio

0.492

1949

Joe DiMaggio

0.507

1950

Joe DiMaggio

0.363

1951

Sorted by home runs:

————————————————————————————-

Player Year AB S D T HR BA SLG

————————————————————————————-

Frank Gustine

1941

463

93

24

7

1

0.270

0.359

Rod Carew

1974

599

180

30

5

3

0.364

0.446

Ty Cobb

1912

553

166

30

23

7

0.409

0.584

Bill Mazeroski

1960

538

110

21

5

11

0.273

0.392

Thurman Munson

1975

597

151

24

3

12

0.318

0.429

Orlando Cepada

1967

563

121

37

0

25

0.325

0.524

Wilbur Stargell

1978

390

67

18

2

28

0.295

0.567

Willie Mays

1963

596

110

32

7

38

0.314

0.582

Ted Williams

1957

420

96

28

1

38

0.388

0.731

Barry Bonds

2002

403

70

31

2

46

0.370

0.799

Joe DiMaggio

1937

621

119

35

15

46

0.346

0.673

Hank Aaron

1971

495

90

22

3

47

0.327

0.669

Mickey Mantle

1956

533

109

22

5

52

0.353

0.705

Babe Ruth

1920

457

73

36

9

54

0.376

0.849

Roger Maris

1961

590

78

16

4

61

0.269

0.620

Sorted by slugging percentages (hi to low):

———————————————

Player

Slugging %

Year

———————————————

Babe Ruth

0.849

1920

Barry Bonds

0.799

2002

Ted Williams

0.731

1957

Mickey Mantle

0.705

1956

Joe DiMaggio

0.673

1937

Hank Aaron

0.669

1971

Roger Maris

0.620

1961

Ty Cobb

0.584

1912

Willie Mays

0.582

1963

Wilbur Stargell

0.567

1978

Orlando Cepada

0.524

1967

Rod Carew

0.446

1974

Thurman Munson

0.429

1975

Bill Mazeroski

0.392

1960

Frank Gustine

0.359

1941

Sorted by at bats:

————————————————————————————-

Player Year AB S D T HR BA SLG

————————————————————————————-

Joe DiMaggio

1949

329

60

14

6

14

0.286

0.492

Joe DiMaggio

1951

482

71

22

4

12

0.226

0.363

Joe DiMaggio

1939

524

108

32

6

30

0.336

0.592

Joe DiMaggio

1946

567

93

20

8

25

0.257

0.453

Joe DiMaggio

1940

572

111

28

9

31

0.313

0.556

Joe DiMaggio

1947

601

107

31

10

20

0.280

0.464

Joe DiMaggio

1950

606

83

33

10

32

0.261

0.507

Joe DiMaggio

1937

621

119

35

15

46

0.346

0.673

Joe DiMaggio

1941

622

109

43

11

30

0.310

0.559

Joe DiMaggio

1936

637

118

44

15

29

0.323

0.576

Joe DiMaggio

1938

660

117

32

13

32

0.294

0.527

Joe DiMaggio

1948

669

114

26

11

39

0.284

0.531

Joe DiMaggio

1942

680

123

29

13

21

0.274

0.447