code: def getAtomLine(self, chain, resid):
          '''This function assumes that all lines are ATOM or HETATM lines.
             resid should have the proper PDB format i.e. an integer left-padded
             to length 4 followed by the insertion code which may be a blank space.'''
          for line in self.lines:
              fieldtype = line[0:6].strip()
              assert(fieldtype == "ATOM" or fieldtype == "HETATM")
              if line[21:22] == chain and resid == line[22:27]:
                  return line
          raise Exception("Could not find the ATOM/HETATM line corresponding to chain '%(chain)s' and residue '%(resid)s'." % vars()f getAtomLine(self, chain, resid):
          '''This function assumes that all lines are ATOM or HETATM lines.
             resid should have the proper PDB format i.e. an integer left-padded
             to length 4 followed by the insertion code which may be a blank space.'''
          for line in self.lines:
              fieldtype = line[0:6].strip()
              assert(fieldtype == "ATOM" or fieldtype == "HETATM")
              if line[21:22] == chain and resid == line[22:27]:
                  return line
          raise Exception("Could not find the ATOM/HETATM line corresponding to chain '%(chain)s' and residue '%(resid)s'." % vars())
docs: This function assumes that all lines are ATOM or HETATM lines.
             resid should have the proper PDB format i.e. an integer left-padded
             to length 4 followed by the insertion code which may be a blank space.