Re: Mein erstes kleines Programm...
Verfasst: Donnerstag 26. Februar 2015, 16:38
Modul: Kalkulationsformeln.py
Meine Idee war, beliebig viele Parameter entgegen zu nehmen. Es kann ja sein, dass ich a priori nicht weiß, wie viele Parameter es werden wird.
Hauptprogramm: Kalkulation.py
Fehlermeldung
Gibt es in Python eine Art "Collection"? In VB6 kann man sehr gut mit "Collection" arbeiten. Dort sammelt man alle Daten und verarbeitet sie. So wollte ich das auch in der Funktion Ersetzer machen.
Code: Alles auswählen
[...]
def Ersetzer(*Zahl): # beliebig viele Parameter
f = Zahl.replace(",", ".")
try:
return float(f)
except ValueError:
raise ValueError('Dezimalzahlen bitte!')
[...]
Hauptprogramm: Kalkulation.py
Code: Alles auswählen
import Kalkulationsformeln
[...]
def BKV():# Beschaffungskalkulation(Vorwaerts)
print ""
print " Die Beschaffungskalkulation(Vorwaerts) wurde gestartet."
print ""
LP = raw_input(" Listenpreis: ")
LR = raw_input(" - Lieferantenrabatt (%): ")
Wert = Kalkulationsformeln.Ersetzer(LP, LR) # Übergabe mehrerer Werte
ZKP = Kalkulationsformeln.Zieleinkaufspreis(Wert[0], Wert[1]) # Die beiden Rückgabewerte [0] und [1] verarbeiten
print " = Zieleinkaufspreis: ", str(ZKP) + " Euro"
[...]
Wie ich also sehe, hat Tuple ein Problem mit dem Attribut "Replace". Wäre auch zu schön gewesen, wenn es mal auf Anhieb klapptTraceback (most recent call last):
File "D:\Dan\Python\Übung\Calc\Kalkulation.py", line 165, in <module>
main()
File "D:\Dan\Python\Übung\Calc\Kalkulation.py", line 161, in main
handle_menu(menu)
File "D:\Dan\Python\Übung\Calc\Kalkulation.py", line 145, in handle_menu
menu[choice][1]()
File "D:\Dan\Python\Übung\Calc\Kalkulation.py", line 30, in BKV
Wert = Kalkulationsformeln.Replacer(LP, LR)
File "D:\Dan\Python\Übung\Calc\Kalkulationsformeln.py", line 7, in Replacer
f = Zahl.replace(",", ".") # Ausgabe: Das ist kein Text.
AttributeError: 'tuple' object has no attribute 'replace'
