Ich hatte die Idee ein Python-Programm zu erstellen, welches die Funktion hat, von mir angegebene Bash-Befehle, mit Defintion, in einer Liste zu speichern.
Der Inhalt des Dictionary sollte wiederum in einer externen Text-Datei gespeichert werden.
Ich habe da konkrete Ideen wie ich es anstellen könnte, aber ich bin ein relativer Neuling in Python. Meine Kenntnisse habe ich mir mit dem Galileo-Openbook(Python - Das umfassende Handbuch) aufgebaut.
IMHO: Ich finde es, als Anfänger ab dem Kapitel Objektorientierung zu kompliziert. Auch Basis-Dateitypen hätte ich wohl mit meinen C-Grundkenntnissen nicht richtig verstanden, doch ich will jetzt nicht zu sehr vom eigentlichen Thema abgleisen.
Gerade, weil ich ein Neuling bin, wollte ich das Programm mit Hilfe von Klassen und Definitionen schreiben (OO), damit ich mehr Verständnis für diese entwickeln kann, denn ich hatte noch sehr wenig Kontakt mit Objekt-orientierten Programmiersprachen.
Hier der Code (Ich habe es übertrieben kommentiert, aber das hilft vielleicht meine Vorangehensweise zu verstehen [und zu korrigieren

Code: Alles auswählen
#!/usr/bin/python
# -*- coding: latin-1 -*-
# "Bash-Befehlssammler"
class Sammler(object):
def __init__(self, befehl, definition):
self.befehl = befehl
self.defintion = definition
def Neuer_Befehl(self, befehl):
self.befehl = befehl
# if-Bedingung für "befehl"
if self.befehl <= 0:
# selbsterklärend
print "Ungueltige Angabe"
return False
else:
# weiße befehl seinen Wert zu
return befehl
def Neue_Definition(self, definition):
self.definition = definition
# Selbe Szenario wie oben
if self.definition <= 0:
print "Ungueltige Angabe"
return False
else:
return definition
# Ende der Klasse
# Eingabe der benötigten Daten
bef = raw_input("Befehl: ")
def_ = raw_input("Definition: ")
fuerdatei = Sammler(bef, def_)
print fuerdatei.Neuer_Befehl()
#fobj = open("Befehle.txt", "a")
#Hier weiß ich nicht was ich angeben soll
#fobj.close
1. Wenn ich das Programm ausführe erhalte ich folgendes:
Code: Alles auswählen
Traceback (most recent call last):
File "bash-Befehlssammler.py", line 42, in <module>
print fuerdatei.Neuer_Befehl()
TypeError: Neuer_Befehl() takes exactly 2 arguments (1 given)
2. Was kann ich verbessern? Habe ich Fehler gemacht?
3. Wie speichere ich die Daten in der Datei "Befehle.txt"?
Ich erwarte keinen fertigen Code zum Programm(was wohl überflüssig zu erwähnen ist), aber ich bin für jede Hilfestellung dankbar.
Gruß KMachine