habe die Python-Skriptsprache neu entdeckt und bin daher noch nicht so fit, wie manch anderer hier im Forum.
Ich möchte gern ein kleines Skript schreiben, welches Daten aus einer CVS-Datei herausliest und dann in 2 bestimmten Spalten (sind durch ";" getrennt) 2 Strings herausliest. Diese 2 Strings sollen dann wiederum mit jeder einzelnen Zeile aus einer Error.log Datei verglichen werden. Werden die 2 Strings beide in einer der Zeilen der Error.log Datei gefunden, so soll die Zeile aus der Error.log Datei in eine Liste geschrieben werden, damit ich später daraus einen HTML-Report erstellen kann!
Bislang lese ich mit dem CVS-Reader aus der CVS Datei heraus. Über die CVS Datei soll quasi später bestimmt werden, was alles in der Error.log Datei von Bedeutung ist und im HTML-Report erscheinen soll.
Was mir jetzt aber leider nicht klar ist:
Wie bekomme ich aus einem Element der Liste den Inhalt in eine String-Variable geschrieben?? Ich muss nämlich 2 Werte aus der CVS Datei mit jeder einzelnen Zeile in der Error.log Datei vergleichen, um so gucken, ob der Wert drin vorkommt.
Wie ich bisher vorgehen wollte:
Pro Zeile aus der CVS-Datei aus meinen gewünschten 2 Spalten die Werte in Strings schreiben und dann prüfen, ob die 2 Strings in einer der Zeilen der Error.log Datei drin vorkommen! Hat vielleicht jemand von euch einen Lösungsansatz oder kann mir zumindest helfen??
Vergleich zweier Strings? Listenelement in String wandeln???
Hier mein bisheriger Code:
Code: Alles auswählen
import csv
import string
def readCSV(path, filename):
contentCSV = []
reader = csv.reader(open(path + filename, "rb"))
for row in reader:
myString = str(row)
if myString.find("YES") == -1: #Elements which do NOT have YES => do NOT take
contentCSV.append(row)
del contentCSV[0] #Delete headline from CSV
return contentCSV
def readErrorFile(path, filename):
contentErrorFile = []
reader = csv.reader(open(path + filename, "rb"))
for row in reader:
contentErrorFile.append(row)
return contentErrorFile
def main():
contentCSV = [] # contains the content of the CVS-File
contentCSV = readCSV("D:\\", "file.csv")
print "\n***************************************"
#for i in contentCSV:
# print i
print "***************************************"
#myString = ""
#myString2 = ""
#for i in contentCSV:
#myString = ''.join(i)
#myString.find(';')
#print myString
#contentErrorFile =[]
#contentErrorFile = readErrorFile("D:\\", "error.err")
#for i in contentCSVErrorFile:
# print i
if __name__ == "__main__":
main()
Gruss
Kalmuecke