我是编程新手,编写处理文件的程序时遇到困难。该计划是读取文件,计算员工工资和更新的年初至今的工资总额。计算完成后,程序将写入新文件。
这是我到目前为止所做的:
empName = ""
prevYTD = 0.0
payRate = 0.0
hoursWorked = 0.0
recordCount = 0
def startUp():
global empFile
print "\n\n" + "PAYROLL REPORT".center(110)+"\n"
print "Employee Name".ljust(30) + "Previous YTD".ljust(18) + \
"Updated YTD".ljust(18) + "Pay Rate".ljust(13) + \
"Hours Worked".ljust(19) + "Current Pay".ljust(8)
print "-"* 109
jobInfo = open("payroll_Assignment#7.txt", "r")
def readFile():
global empName, prevYTD, payRate, hoursWorked, eof
empRec = jobInfo.readline()
if empRec == "":
eof = True
else:
empName = empRec[:25]
prevYTD = float(empRec[25:40])
payRate = float(empRec[40:55])
hoursWorked = float(empRec[55:])
eof = False
def processRecords():
global recordCount
while not eof:
recordCount +=1
printRecord()
readFile()
def printRecord():
print empName, prevYTD, payRate, hoursWorked
def closeUp():
jobInfo.close()
print "\nNumber of records in the file was",recordCount
startUp()
readFile()
processRecords()
printRecord()
closeUp()
我的问题是制作一个新文件。该程序假设写入一个新文件,我不知道该怎么做。很抱歉这个很笨拙,我很陌生。
答案 0 :(得分:1)
不确定问题是什么,但有些成语可以让你轻松。
文件是可迭代的,因此您可以迭代它。
for line in open('myfile','r'):
doSomething(line)
请参阅详情:http://docs.python.org/tutorial/inputoutput.html
[编辑:根据修订后的问题]
在python中打开一个用于写入的新文件应该很容易
>>> logfile = open('test.log', 'w') # Opens a new file
>>> logfile = open('test.log', 'a') # Opens a existing file to append information
查看Python教程中打开文件的各种模式
答案 1 :(得分:0)
感谢您的回答。该计划是读取文件,计算员工工资和更新年度总计。计算完成后,程序将写入一个新文件。我无法弄清楚如何进行计算,制作,编写或保存更新的文件。