Created
August 31, 2012 15:54
-
-
Save anonymous/3554990 to your computer and use it in GitHub Desktop.
Flexibles Menü, zum Handeln spaltengetrennter Dateien
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python3 | |
# -*- coding: utf-8 -*- | |
import os | |
import platform | |
import subprocess | |
''' | |
Ermittelt das Betriebssystem mit dem dazugehörigen Programmstarter | |
und öffnet die an fileopen übergebene Datei damit. | |
Damit das Modul eingesetzt werden kann, muß dieses importiert werden. | |
from filestart import fileopen | |
Der Aufruf lautet: | |
fileopen(filename) | |
''' | |
def filestarter(): | |
''' | |
Betriebssytem ermitteln und Programmstarter | |
an Funktion fileopen übergeben. | |
''' | |
try: | |
return {'Windows': 'start', | |
'Linux': 'xdg-open', | |
'Darwin': 'open' | |
}[platform.system()] | |
except KeyError: | |
raise RuntimeError( | |
'Für Ihr Betriebssystem\n%s\nkonnte kein passender Starter ermittelt werden!' % platform.platform()) | |
def fileopen(filename): | |
''' | |
Datei mit Programmstarter von Funktion fileopen öffnen. | |
''' | |
try: | |
default_program = filestarter() | |
except RuntimeError as e: | |
print(e) | |
print('\nÖffnen Sie zum Editieren der Datei %s einen Texteditor.\nDie Datei %s befindet sich unter\n%s.' % (filename, chance, os.path.realpath(filename))) | |
else: | |
print('Datei %s wird mit dem Standardprogramm\nIhres Betriebsystem zum Editieren geöffnet!' % filename) | |
process = subprocess.Popen([default_program, filename]) | |
process.wait() |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/usr/bin/python3 | |
# -*- coding: utf-8 -*- | |
''' | |
Nehmen Sie hier Ihre persöhnliche Einstellungen vor. | |
:param:datapool | |
Datei in dem die Daten enthalten sind. | |
:param:headings | |
Spaltenbenennung, bezogen auf die Datendatei. | |
Es müssen dazu nicht alle Spalten der Datendatei aufgelistet werden. | |
Wichtig ist aber, daß die Spaltenangaben von links (Spalte "0") | |
fortlaufend beginnen! | |
FALSCH: Spalte[0], Spalte[3], Spalte[4], Spalte[7], | |
RICHTIG: Spalte[0], Spalte[1], Spalte[2], Spalte[3], Spalte[4], Spalte[5], Spalte[6], Spalte[7], | |
:param:headdistance | |
10 = alle 10 Zeilen | |
ODER | |
25 = alle 25 Zeilen | |
0 = keine Wiederholung | |
:param:listfilter | |
Ermöglicht eine weitere Filterung des Suchergebnisses | |
Mit 'ja' ist der Filter aktiv, mit 'nein' Filter nicht aktiv. | |
:param:spelling | |
0 = Groß-/Kleinschreibung wird beachtet | |
1 = Alle Eingaben werden in Großschreibung umgewandelt | |
2 = Alle Eingaben werden in Kleinschreibung umgewandelt | |
''' | |
# Datendatei | |
#datapool = 'pythoninfo.txt' | |
#datapool = 'LISTE_ARTIKELGESAMT.txt' | |
datapool = 'LISTE_BASE.txt' | |
# Kopfzeile | |
#headings = 'Python2', 'Python3', 'Info' | |
headings = 'Hersteller', 'H-Nummer', 'VE', 'Inhalt', 'Beschreibung' | |
# Wiederholung der Kopfzeile | |
headdistance = 20 | |
# Filter | |
listfilter = 'ja' | |
# Sucheingabe | |
spelling = 1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Tkinter tkinter Namensänderung von Modul Tkinter, neuer Modulnamen ist tkinter. Statt 'from Tkinter import tkinter' gilt nun 'import tkinter' | |
aa1 2 3 | |
execfile() - Ab Python3 entfällt execfile() | |
flöte BÄR 123456 | |
from email.MIMEBase import MIMEBase from email.mime.base import MIMEBase Namensänderung von Modul email.MIMEBase, neuer Modulnamen ist email.mime.base | |
from email.MIMEImage import MIMEImage from email.mime.image import MIMEImage Namensänderung von Modul email.MIMEImage, neuer Modulnamen ist email.mime.image | |
from email.MIMEMultipart import MIMEMultipart from email.mime.multipart import MIMEMultipart Namensänderung von Modul email.MIMEMultipart, neuer Modulnamen ist email.mime.multipart | |
from email.MIMEText import MIMEText from email.mime.text import MIMEText Namensänderung von Modul email.MIMEText, neuer Modulnamen ist email.mime.text | |
keiner hats wer | |
print print() print(obj), Objekt muss in Klammern eingeschlossen sein. | |
raw_input() input() raw_input() wurde durch input() ersetzt. | |
sys.maxint sys.maxsize Änderung, jedes Vorkommen von sys.maxint wird zu sys.maxsize | |
test TEST Änderung | |
tkFont tkinter.font Namensänderung von Modul tkFont, neuer Modulnamen ist tkinter.font | |
tkMessageBox tkinter.messagebox Namensänderung von Modul tkMessageBox, neuer Modulnamen ist tkinter.messagebox | |
tkSimpleDialog tkinter.simpledialog Namensänderung von Modul tkSimpleDialog, neuer Modulnamen ist tkinter.simpledialog | |
xrange range xrange unter Python3 nicht mehr nutzbar |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment