2017-10-09 61 views
1

我遇到了一个问题。通过下面的代码,我试图简化大型脚本中的几个文件/ json对象。Python:对象抛出参数警告

Pointer.py

import json 

class Pointers: 

    def __init__(self, target_file, mode, data): 
     self.target_file = target_file    # file nameand path to load/store 
     self.data = data       # data to load/store 
     self.mode = mode       # mode on the data 

    # some other functions 

    # Writer object for non-json files 
    def sys_writer_4file(self): 
     with open(self.target_file, self.mode) as write_pointer: 
      handler = write_pointer.write(self.data) 
     write_pointer.close() 
     return handler 

但是当我尝试从如下图所示另一个脚本调用它,

Report.py

from f_pointers import Pointer 

class Something: 

    def someElse(self, url): 
     self.url = url 

    def someNonStaticFunction(self): 
     path = "./filepath/filename" 
     someData = data 
     Pointers.sys_writer_4file(("./filepath/filename", 'wb', somedata) 

我得到没有从我的翻译反恐执行局的说法警告说,

此检验报告声明的参数和 实际参数,以及不正确的参数之间的差异(例如重复命名为 参数)和不正确的参数顺序。装饰者也被分析。

在此行中:

Pointers.sys_writer_4file(("./filepath/filename", 'wb', somedata) 

有人能告诉我我应该如何创建对象? 在此先感谢。

回答

1

你必须初始化类第一:

Pointers("./filepath/filename", 'wb', somedata).sys_writer_4file() 
+0

非常感谢@SatanDmytro。我正在初始化函数参数内部 - 什么是错误! – katiepy

相关问题