title: Python: No value for argument 'filenames' in unbound method call
body: <p>I have a class to wrap around the config stuff of my program.
  But when I try to test i in ipython like this:
  </p>
  
  <pre><code>c = Config(test.cfg)
  </code></pre>
  
  <p>I get the error:</p>
  
  <pre><code>"TypeError: read() missing 1 required positional argument: 'filenames'
  "
  </code></pre>
  
  <p>But I pylint throws this error in my emacs:</p>
  
  <pre><code>"No value for argument 'filenames' in unbound method call"
  </code></pre>
  
  <p>I think the error adbove is the reason of the error above it.
  But I don't know why.
  I think the method is call bound since I used self as reference but I'm not shure and I don't get why it doesn't accept cfg as paramter.</p>
  
  <p>This is my class:
  </p>
  
  <pre><code>from configparser import ConfigParser
  
  class Config:
      """Wrapper around config files
      Args:
          cfg: main config file
      """
      def __init__(self, cfg=None):
          self.cfg = []
          self.cfgraw = cfg
          self.scfgs = []
          self.scfgs_raw = []
          if not cfg is None:
              self.add(typ="main", cfg=cfg)
  
  
      def add(self, typ, cfg):
          """add config file
          Args:
               typ: type of file main or sub
          Returns:
               none
          """
          if typ is not "main" and cfg is None:
              raise ValueError('no file provied and type not main')
  
          if typ is "sub":
              for index in range(len(self.scfgs)):
                  self.scfgs[index] = ConfigParser
                  self.scfgs[index].read(cfg)
  
          if typ is "main":
              self.cfg = ConfigParser
              self.cfg.read(cfg)
      def write(self, typ=None, index=None):
          """write changes made
          Args:
              typ: type of target file
              index: if type is sub add index to write selected file
          Returns:
              none
          """
          if typ is "main":
              self.cfg.write(self.cfgraw)
          if typ is "sub":
              if index is None:
                  for item in range(len(self.scfgs)):
                      self.scfgs[item].write(self.scfgs_raw[item])
              else:
                  self.scfgs[item].write(self.scfgs_raw[item])   
  </code></pre>