Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python赋值的困难_Python_File - Fatal编程技术网

python赋值的困难

python赋值的困难,python,file,Python,File,我是编程新手,在编写处理文件的程序时遇到困难。该程序将读取一个文件,计算员工工资和更新的年初至今工资总额。计算后,程序将写入一个新文件 这就是我到目前为止所做的: empName = "" prevYTD = 0.0 payRate = 0.0 hoursWorked = 0.0 recordCount = 0 def startUp(): global empFile print "\n\n" + "PAYROLL REPORT".center(110)+"\n" p

我是编程新手,在编写处理文件的程序时遇到困难。该程序将读取一个文件,计算员工工资和更新的年初至今工资总额。计算后,程序将写入一个新文件

这就是我到目前为止所做的:

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() 

我的问题是制作一个新文件。这个程序应该写入一个新文件,我不知道怎么做。抱歉这么笨拙,我对它很陌生。

不确定问题出在哪里,但一些习惯用法可以让你轻松

  • 您可以避免测试EOF和while循环
  • 文件是可迭代的,因此您可以对其进行迭代。

    for line in open('myfile','r'):
        doSomething(line)
    
    详情请参阅:

    [编辑:基于修订的问题]

    在python中打开一个新文件进行编写应该很容易

    >>> logfile = open('test.log', 'w') # Opens a new file
    >>> logfile = open('test.log', 'a') # Opens a existing file to append information
    
    查看Python教程中打开文件的各种模式


      • 谢谢您的回答。该程序将读取一个文件,计算员工工资并更新年初至今的总额。计算完成后,程序将写入一个新文件。我不知道如何进行计算、生成、写入或保存更新的文件。

        我们知道程序应该做什么,我们知道您到目前为止做了什么,但我们不知道您的问题是什么……如果您不提出特定问题,您将得不到任何答案。不要以这种方式使用全局变量,对于只读取一行的函数,不要使用readFile name。使用参数来定义函数!您可以编辑问题并将此文本添加到其中。之后请删除此“答案”,因为它显然不是您问题的答案。我已编辑了问题和我的答案。你可以删除你的回复。当你想回复别人的回复和帖子时,使用评论。两个greg?还是带有两个图标的Greg?该程序用于读取一个文件,计算员工工资和更新的YTD工资总额。计算后,程序将写入一个新文件。我无法让程序进行计算或生成、写入或保存更新的文件。