Hallo EyDu
Habe mich zu früh gefreut, zwar konnte ich die Liste in ein TAB-getrenntes Format überführen, aber die Liste lässt sich nicht zum Bearbeiten öffnen.
EyDu hat geschrieben:Dein zeit mal, was in ``op_kunden_access_path`` steht. Ich tippe auf eine Escape-Sequenz.
Warum versuchst due die gezeigte Datei überhaupt mit dem csv-Modul zu öffnen? Die hat mit csv-Dateien nun so gar nichts zu tun.
Der Pfad ist im Code hinterlegt. Habe bisher gute Erfahrungen mit dem csv-Modul gemacht, gerade wenn es um TAB-getrennte Listen geht.
Der Code:
Code: Alles auswählen
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# For Python3.x
import os
import re
import sys
import csv
import codecs
# KUNDEN_ACCESS.txt
op_kunden_access_path = os.path.join(os.path.dirname(__file__),
'base_officeplanet', 'KUNDEN_ACCESS.txt'),
# KUNDEN.txt
op_kunden_path = os.path.join(os.path.dirname(__file__),
'base_officeplanet', 'KUNDEN.txt'),
# KUNDENKONDITIONEN.txt
op_kundenkonditionen_path = os.path.join(os.path.dirname(__file__),
'base_officeplanet', 'KUNDENKONDITIONEN.txt'),
def customer_access():
data = set()
kunden = set()
konditionen = set()
with codecs.open(op_kunden_access_path, "r") as infile:
reader = csv.reader(infile, delimiter="\t", quotechar="^")
for row in reader:
kundenline = (row[0], row[1], row[2], row[3], row[4], row[5],
row[6], row[7], row[8], row[9], row[10], row[11], row[12],
row[13], row[14], row[15], row[17], row[18], row[19],
row[29], row[30], row[31], row[36], row[42], row[43],
row[16], '')
konditionline = (row[0], row[1], row[20], row[21], row[22],
row[23], row[24], row[25], row[26], row[27], row[28], '')
kunden.add(tuple(kundenline))
konditionen.add(tuple(konditionline))
customer_access()
Ein Datensatz der Liste, sieht nun so aus:
70 70 Fa. OHO Dienstleistungs GmnbH Leergut Herr AHA Leergutankauf Ankererstr. 60 04711 Fledder 0,00 Herr Henning Hübner 0000 000000 0000 00000 Frau Pau 0000 00000 Leergut-Nr. 0000000 immer angeben Abholung, frei Haus ab 0 € Ab 20,- € wird Vergütung gut geschrieben, darunter entfällt eine Gutschrift! Abrechnungen/Gutschriften etc.: Frau Pau Tel. 00000 000000 Fax 0000 000000
pau@pau-box.de 0,00 € 0,00 € 0,00 0,00 € 0,00 0,00 0,00 € 0 Sofort 0 1 Auftraggeber bei Abholung: IPC - Grüne Umweltbox Ankerer. 60 04711 Fledder Alte Firmierung: LOL, Entsorgungs-Zentrum GmbH, Wikinger-Str. 138, 04711 Köln Tel.: 0000 0000000 Fax: 0000 0000000 0 2006 1.1.2006 00:00:00 0000000 0 33,25 € 44,60 € 0
Die Fehlermeldung:
Code: Alles auswählen
Traceback (most recent call last):
File "kunden_access.py", line 40, in <module>
customer_access()
File "kunden_access.py", line 28, in customer_access
with codecs.open(op_kunden_access_path, "r") as infile:
File "/usr/lib/python2.7/codecs.py", line 881, in open
file = __builtin__.open(filename, mode, buffering)
TypeError: coercing to Unicode: need string or buffer, tuple found
Grüße Nobuddy