2014-09-05 66 views
-1

当前我拥有此代码。Python函数打开,写入并使用diff参数调用

class FileOperations: 

def open_files(sys): 
    sys.DM = open('DM_FILE.txt','a') 
    sys.TM = open('TM_FILE.txt','a') 
    sys.AP = open('AP_FILE.txt','a') 

def write_header_to_files(auto): 
    global x,y,z 
    x= 'PRINT_PUB_CODE,PRINT_ACCT_NUM,HOME PHONE..' 
    y= 'PRINT_PUB_CODE,PRINT_ACCT_NUM,OFFICE PHONE,..' 
    z= 'PRINT_PUB_CODE,PRINT_ACCT_NUM,CCELLPHONE,..' 
    auto.DM_FILE.write('x') 
    auto.TM_FILE.write('y') 
    auto.AP_FILE.write('z') 

我使用

filehandle = FileOperations() 
filehandle.open_files() 
filehandle.write_header_to_files() 

调用脚本DIFF类我不确定如何调用单独的文件,如果循环内打开,然后把它写。

在帮助之后,这就是我所做的。

class FileOperations: 
    def open_files(self): 
    self.file= { 
     'DM':open('DM_FILE.txt','a'), 
     'TM':open('TM_FILE.txt','a'), 
     'AM':open('AP_FILE.txt','a'), 
     'DM1':open('DM_EMAIL_FILE.txt','a'), 
     'TM1':open('TM_EMAIL_FILE.txt','a'), 
     'AP1':open('AP_EMAIL_FILE.txt','a') 
       } 
def write_header_to_files(self): 
global x,y,z 
x= 'PRINT_PUB_CODE,PRINT_ACCT_NUM,.. 
y= 'PRINT_PUB_CODE,CO_NAME,PREFIX,.. 
z= 'PRINT_PUB_CODE,PREFIX,FIRST_NAME, 
self.write={ 
     'MD' : DM_FILE.write(x), 
     'MT' : TM_FILE.write(y), 
     'PA' : AP_FILE.write(z), 
     'MD1' : DM_EMAIL_FILE.write(x), 
     'MT1' : TM_EMAIL_FILE.write(y), 
     'PA1' : AP_EMAIL_FILE.write(z) 
       } 

真的很感激,如果有人能说的是正确的代码为我want.Also我怎样才能从另一个调用脚本此功能。

回答

1
class FileOperations: 
    def __init__(self): 
     self.files = { 
      'DM' : open('DM_FILE.txt','a'), 
      'TM' : open('TM_FILE.txt','a'), 
      'AP' : open('AP_FILE.txt','a') 
     } 

    def write_header_to_file(self, file_id): 
     global x 
     self.files[file_id].write(x) 

filehandle = FileOperations() 
filehandle.write_header_to_file('DM') 
filehandle.write_header_to_file('TM') 
+0

我如何传递差异值? – Rajarshi 2014-09-05 20:10:51

+1

类中任何函数声明的第一个参数是对类实例本身的引用(除了某些装饰器)。你应该总是命名这个参数'self'。 – OregonTrail 2014-09-05 20:12:21

+0

filehandle.write_header_to_files(self)我得到了那个,但每个写都是差异的,所以我怎么得到self.DM和self.DM.write来调用 – Rajarshi 2014-09-05 20:17:08

相关问题