Da ich noch recht neu bin in der großen Welt von Python wollte ich einfach mal einige Meinungen zur Verbesserung des Codes und allgemeiner Ideen für weitere Funktionen einholen.
Code: Alles auswählen
# -*- coding: utf-8 -*-
"""
Created on Sep 5 2017
@author: TheBombTuber
"""
#Umbau in tkinter ist noch geplant
#Import area
import sys, os, time, subprocess
#Import area
print("Bevor sie Beginnen legen sie bitte einen Dateitypen fest""\n")
time.sleep(1)
while True:
print("Vorzugsweise" ' "' ".txt" '"' "\n")
time.sleep(1)
print("Sie können jedoch jeden beliebigen Dateityp angeben")
while True:
datentyp = input()
if datentyp == '':
print("Bitte tätigen sie eine Eingabe")
time.sleep(1)
continue
if '.' in datentyp:
break
else:
print("Datentyp muss einen "'"."'" am Anfang stehen haben")
continue
print("Sie haben" + ' "' + datentyp + '" ' + "als Datentyp angegeben.")
time.sleep(1)
print("vielen Dank" + "\n" + "Sie gelangen nun in das Menü")
time.sleep(2)
os.system("cls")
break
#def area
def add_entry():
os.system("cls")
print("Datei hinzufügen"+"\n")
###############
"""
Speicherort auswahl
in Bearbeitung
"""
###############
time.sleep(0.5)
while True:
print("Name der Datei?")
File = input() + (datentyp)
try:
open(File, "r")
print("Datei bereits vorhanden!""\n""Möchten Sie sie überschreiben?""\n""Ja oder Nein?")
while True:
überschreiben = input()
if überschreiben == 'Ja':
open(File, 'w')
time.sleep(0.5)
print("Datei wurde überschrieben")
break
if überschreiben == 'Nein':
break
else:
print('Bitte schreiben sie "Ja" oder "Nein" nicht ' + überschreiben)
time.sleep(1)
os.system('cls')
continue
break
except FileNotFoundError:
open(File, 'w')
time.sleep(0.5)
print('Datei ' + '"' + File + '"' + ' erstellt')
break
continue
while True:
print("Sie kehren zurück ins Menü")
time.sleep(1.5)
os.system("cls")
break
def search_entry():
os.system("cls")
print("Dateien des Typ's " + datentyp + " werden gesucht""\n")
time.sleep(0.5)
dirList = os.listdir('.')
dirList.sort()
newList = []
for sFile in dirList:
if sFile.find(datentyp) == -1:
continue
newList.append(sFile)
for sFile in newList:
print(sFile)
time.sleep(0.2)
time.sleep(2)
print("\n""Drücken sie "'"Enter"'" um zurück ins Menü zu gelangen")
while True:
zurückinMenü = input()
if zurückinMenü == '':
print("Sie kehren zurück ins Menü")
time.sleep(1.5)
os.system("cls")
break
def change_entry():
os.system("cls")
print("Datei bearbeiten""\n")
time.sleep(0.5)
batchdatei = (" .bat")
filepath = ((os.path.dirname(sys.argv[0]) + "/" + batchdatei))
while True:
dirList = os.listdir('.')
dirList.sort()
newList = []
for sFile in dirList:
if sFile.find(datentyp) == -1:
continue
newList.append(sFile)
for sFile in newList:
print(sFile)
time.sleep(0.2)
print("Welche Datei möchten sie bearbeitet?")
auswahldatei = input() + (datentyp)
print(auswahldatei + ' wird aufgerufen')
time.sleep(1)
direction = ((os.path.dirname(sys.argv[0]) + "/" + auswahldatei))
bat = open(' .bat', 'w')
bat.write(str('notepad' + ' ' + direction))
bat.close()
time.sleep(1)
break
while True:
p = subprocess.Popen(filepath, shell=True, stdout = subprocess.PIPE)
stdout, stderr = p.communicate()
time.sleep(1)
break
while True:
print("Sie kehren zurück ins Menü")
os.remove(filepath)
time.sleep(1.5)
os.system("cls")
break
def remove_entry():
while True:
os.system("cls")
dirList = os.listdir('.')
dirList.sort()
newList = []
for sFile in dirList:
if sFile.find(datentyp) == -1:
continue
newList.append(sFile)
for sFile in newList:
print("verfügbare Dateien""\n")
print(sFile)
time.sleep(0.2)
print("\nWelche Datei löschen?""\n")
try:
zulöschen = input() + (datentyp)
os.remove(zulöschen)
print("Datei wurde entfernt")
time.sleep(1)
break
except FileNotFoundError:
print("Datei " + zulöschen + " existiert nicht")
print("Eingabe Bitte wiederholen")
time.sleep(1)
continue
while True:
print("Sie kehren zurück ins Menü")
time.sleep(1.5)
os.system("cls")
break
def quit_entry():
os.system("cls")
print("Programm wird beendet")
time.sleep(1)
sys.exit()
def handle_menu(menu):
while True:
try:
for index, item in enumerate(menu, 1):
print("{} {}".format(index, item[0]))
choice = int(input("Ihre Wahl? ")) - 1
if 0 <= choice < len(menu):
menu[choice][1]()
else:
print("Bitte nur Zahlen im Bereich 1 - {} eingeben".format(len(menu)))
time.sleep(1)
os.system('cls')
except ValueError:
break
#def area
#Menu area
menu = [
["Datei hinzufügen", add_entry],
["Datei löschen", remove_entry],
["Dateien anzeigen", search_entry],
["Datei bearbeiten", change_entry],
["Programm beenden", quit_entry]
]
handle_menu(menu)
#Menu area
Mit freundlichen Grüßen
TheBombTuber