File management

erict1689 erict1689 at yahoo.com
Wed Oct 15 19:56:26 CEST 2008


I am writing a program in which i open up a file and read the contents
then do some calculations and update the information but in a new
file.  So my question is how do i go about declaring the new file so
that the program will know that the new information goes into the new
file and not the original?  if it helps here is the code that i have
so far:
def startUp():
    # Purpose: opens files and print report headings
    global empName, previousYTD, payRate, hoursWorked, recordCount,
eof, payFile, \
           payFileUpdated, newYTD, currentPay
    payFile=open("payroll.txt", "r")
    payFile.readline()
    

def readRecord():
    # Purpose: reads a record
    global empName, previousYTD, payRate, hoursWorked, recordCount,
eof, payFile, \
           payFileUpdated, newYTD, currentPay

    employeeRec = payFile.readline()
    if employeeRec == "":
        eof = True
    else:
        # parse file line for record fields and format/convert for
final output
        empName = employeeRec[0:25].strip()
        previousYTD = float(employeeRec[25:40])
        payRate = float(employeeRec[40:55])
        hoursWorked = float(employeeRec[55:70])
        recordCount += 1
        eof = False

def writeRecord():
    # Purpose: writes the updated record to the output file
    #Parameter
    global empName, previousYTD, payRate, hoursWorked, recordCount,
eof, payFile, \
           payFileUpdated, newYTD, currentPay
   
def processRecords():
    # Purpose: loops through input file and processes each record
    global empName, previousYTD, payRate, hoursWorked, recordCount,
eof, payFile, \
           payFileUpdated, newYTD, currentPay
    
    while not eof:
        calculatePay()
        printReportLine()
        writeRecord()
        readRecord()

def calculatePay():
    # Purpose: calculates pay and updated YTD
    # Return values: float - calculated pay, float - updated YTD amount 
    global empName, previousYTD, payRate, hoursWorked, recordCount,
eof, payFile, \
           payFileUpdated, newYTD, currentPay
    
def printReportLine():
    # Purpose: prints employee pay information
    # Parameters passed: float - calculated pay, float - updated YTD
amount
    global empName, previousYTD, payRate, hoursWorked, recordCount,
eof, payFile, \
           payFileUpdated, newYTD, currentPay

def closeUp():
    # Purpose: end of program housekeeping
    global empName, previousYTD, payRate, hoursWorked, recordCount,
eof, payFile, \
           payFileUpdated, newYTD, currentPay
   
    payFile.close()
    payFileUpdated.close()
    print "\nNumber of records in the file was",recordCount

any and all help is appreciated.




More information about the Python-list mailing list