code: def _operator_generator(index, conj):
          
          pterm = PauliTerm('I', 0, 1.0)
          Zstring = PauliTerm('I', 0, 1.0)
          for j in range(index):
              Zstring = Zstring*PauliTerm('Z', j, 1.0)
  
          pterm1 = Zstring*PauliTerm('X', index, 0.5)
          scalar = 0.5 * conj * 1.0j
          pterm2 = Zstring*PauliTerm('Y', index, scalar)
          pterm = pterm * (pterm1 + pterm2)
  
          pterm = pterm.simplify()
          return pterm
docs: Internal method to generate the appropriate operator