Stringumformatierung / Strings nach X Zeichen abschneiden
Verfasst: Montag 23. Januar 2006, 12:01
hallo python-gemeinde!
ich habe ein ganz einfaches string-formatierungsproblem.
ich muss eine csv-datei auf eine sap-taugliche datei mit festen feldlängen umstricken, soweit kein problem und häufig gemacht(.ljust(), .rjust() .zfill() sind meine freunde!) aber jetzt kann ich mich leider nicht darauf verlassen, das in der csv-datei gelieferte felder die maximallänge des jeweiligens feldes nicht übersteigen, quasi einfach länger sind als sie dürften. und ljust() und rjust() schneiden leider die überstehenden zeichen nicht ab und somit kommen mir bei zu langen feldern meine festen feldlängen in der exportdatei durcheinander!
bisher: exportdatei.write(datensatz[xx].ljust(yy))
leider habe ich keine einfach möglichkeit gefunden einfach und unkompliziert datensätze zu kappen, so in der wünschenswerten art wie (ausgedacht) .rcut(x) oder .lcut(x) mit der ich einfach sagen könnte "nimm die ersten/letzten x zeichen und schneide den rest ab".
welche funktion habe ich übersehen? gibt es eine solche einfache funktion einfach nicht und wenn nicht wie löse ich das am unkompliziertesten?
Schonmal DANKE im voraus!!!
ich habe ein ganz einfaches string-formatierungsproblem.
ich muss eine csv-datei auf eine sap-taugliche datei mit festen feldlängen umstricken, soweit kein problem und häufig gemacht(.ljust(), .rjust() .zfill() sind meine freunde!) aber jetzt kann ich mich leider nicht darauf verlassen, das in der csv-datei gelieferte felder die maximallänge des jeweiligens feldes nicht übersteigen, quasi einfach länger sind als sie dürften. und ljust() und rjust() schneiden leider die überstehenden zeichen nicht ab und somit kommen mir bei zu langen feldern meine festen feldlängen in der exportdatei durcheinander!
bisher: exportdatei.write(datensatz[xx].ljust(yy))
leider habe ich keine einfach möglichkeit gefunden einfach und unkompliziert datensätze zu kappen, so in der wünschenswerten art wie (ausgedacht) .rcut(x) oder .lcut(x) mit der ich einfach sagen könnte "nimm die ersten/letzten x zeichen und schneide den rest ab".
welche funktion habe ich übersehen? gibt es eine solche einfache funktion einfach nicht und wenn nicht wie löse ich das am unkompliziertesten?
Schonmal DANKE im voraus!!!