Python ayuda a leer la falla del archivo csv debido a finales de línea

Estoy tratando de crear este script que verificará el nombre de host de la computadora y luego buscará en la lista maestra el valor para devolver un valor correspondiente en el archivo csv. Luego abra otro archivo y busque y reemplace. Sé que esto debería ser fácil, pero no he hecho tanto en Python antes. Esto es lo que tengo hasta ahora ...

masterlist.txt  (tab delimited)
Name                 UID
Bob-Smith.local      bobs
Carmen-Jackson.local carmenj
David-Kathman.local  davidk
Jenn-Roberts.local   jennr

Aquí está el guión que he creado hasta ahora

#GET CLIENT HOST NAME
import socket
host = socket.gethostname()
print host

#IMPORT MASTER DATA
import csv, sys
filename = "masterlist.txt"
reader = csv.reader(open(filename, "rU"))

#PRINT MASTER DATA
for row in reader:
  print row

#SEARCH ON HOSTNAME AND RETURN UID



#REPLACE VALUE IN FILE WITH UID
#import fileinput
#for line in fileinput.FileInput("filetoreplace",inplace=1):
#   line = line.replace("replacethistext","UID")
#   print line

En este momento, solo está configurado para imprimir la lista maestra. No estoy seguro de si la lista debe analizarse y colocarse en un diccionario o qué. Realmente necesito descubrir cómo buscar el primer campo para el nombre de host y luego devolver el campo en la segunda columna.

Gracias de antemano por tu ayuda, Aaron

ACTUALIZAR: Eliminé la línea 194 y la última línea de masterlist.txt y luego volví a ejecutar el script. Los resultados fueron los siguientes:

Rastreo (llamadas recientes más última):
Archivo "update.py", línea 3, para fila en csv.DictReader (open (fname), delimiter = '\ t'): File "/System/Library/Frameworks/Python.framework/Versions/2.6/lib/ python2.6 / csv.py ", línea 103, en el siguiente archivo self.fieldnames Archivo" /System/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/csv.py ", línea 90, en nombres de campo self._fieldnames = self.reader.next () _csv.Error: carácter de nueva línea visto en un campo sin comillas: ¿necesita abrir el archivo en modo universal-nueva línea?

El script actual que se usa es ...

import csv
fname = "masterlist.txt"
for row in csv.DictReader(open(fname), delimiter='\t'):
  print(row)

Respuestas a la pregunta(3)

Su respuesta a la pregunta