176k views
0 votes
2. Write a standalone function partyVolume() that takes accepts one argument, a string containing the name of a file. The objective of the function is to determine the a Volume object that is the result of many people at a party turning the Volume up and down. More specifically:

User Sealz
by
3.2k points

1 Answer

7 votes

Answer:

The Python code is given below with appropriate comments

Step-by-step explanation:

#required method, assuming Volume class is defined and is accessible

def partyVolume(filename):

#opening file in read mode, assuming file exists

file=open(filename,'r')

#reading initial volume

initial=float(file.readline())

#creating a Volume object with initial volume

v=Volume(initial)

#looping through rest of the lines in file

for line in file.readlines():

#removing trailing/leading white spaces/newlines and splitting line by white

#space to get a list of tokens

line=line.strip().split(' ')

#ensuring that length of resultant list is 2

if len(line)==2:

#reading first value as direction (U or D)

dir=line[0].upper()

#reading second value as float value

value=float(line[1])

if dir=='U':

#turning volume up

v.up(value)

elif dir=='D':

#turning volume down

v.down(value)

#closing file, saving changes

file.close()

#returning volume

return v

User Saad Abbasi
by
3.5k points