Seite 1 von 1

datetime - "module not callable" - wie kann das sein?

Verfasst: Freitag 21. Juni 2024, 12:40
von Pythagoraze
Hallo,
ich habe diesen Code von einer Hompeage mittles Googlesuche (weiß nicht mehr woher)
und die verwendet ja eigentlich auch nur bereits eingebaute Funktionen und module.

code]from datetime import datetime

now = datetime.now()
past = datetime(2022, 4, 15, 16, 30, 0) # Example past date[/code]

Darum verwundert mich der folgende Fehler besonders:

Code: Alles auswählen

  File "C:\Users\Studenten\Documents\PYT\datetime.py", line 4, in <module>
    a = datetime.datetime(2023, 10, 9, 19, 39, 10) #2023, 12, 12, 19, 00, 10
TypeError: 'module' object is not callable
Wieso sollte das nicht aufrufbar sein?
das müßte doch mt zu den standardmodule gehören, oder?


Es handelt sich um die aktuellste Version von Thonny (mit python)
Was sollte da fehlen?

Re: datetime - "module not callable" - wie kann das sein?

Verfasst: Freitag 21. Juni 2024, 12:52
von __blackjack__
@Pythagoraze: Du hast *Dein* Modul auch `datetime` genannt. Damit gibt es jetzt Dein Modul, das Modul aus der Standardbibliothek, und den `datetime`-Datentyp daraus, die alle auf den Namen `datetime` hören, und ich vermute mal ganz stark Du hast da gerade eine falsche Vorstellung was `datetime` konkret ist, von diesen drei Möglichkeiten.

Problemlösung ist wahrscheinlich einfach das eigene Modul nicht `datetime` zu nennen.

Re: datetime - "module not callable" - wie kann das sein?

Verfasst: Freitag 21. Juni 2024, 21:28
von Pythagoraze
meine Güte,
ja, sicher. OMG !

nee, nicht mein aktuelles modul/Projekt - sondern,
ich habe einen Ordner, in dem ganz viele (von Beginn meiner Lernübungen an) python-Scripte gespeichert sind.
In der Vergangenheit hatte ich schon mal ein Script, das Datumsangaben verarbeitet (sogar fehlerfrei, u. lauffähig!) und dann noch namens datetime(.py) abgespeichert -
aber natürlich jetzt nicht mehr dran gedacht , daß das noch (von 2023) zwischen 200 Dateien im selben Ordner (*Urgs!*) sein könnte.
Klar. da gibt es jetzt natürlich nichts raus aufzurufen. Aus dem Modul/ Datei.

Meine Frage hier, war, weil ich vor einiger Zeit (Wochen) ein paar Bibliotheken mit pip heruntergeladen hab und sonst erstmal alles bis heute lief - bis ich dieses simple Datumsbeispiel "nochmal" ausprobieren wollte und
nachdem ich wegen des Fehlers mit google dann einige weitere Codefragmente ähnlicher Art gefunden hatte - alle gleich simple - und alle Suchen nach Fehlermeldungen nur erkärten, daß es da eigentlich keinen Fehler gibt, wenn man alles korrekt aufruft -
und ich mich gewundert habe, ob solche rudimentären Module/funktionen irgendwie mit pip rausgeworfen sein worden könnten :D

- wer denkt schon daran, daß er törichter Weise in der Vergangenheit Scripte unter dem Namen existierender Module abgespeichert hat ... :D
Aber, OK, jetzt werd ich's mir merken.


Vermutlich werden viele den Fehler auch nie zu Gesicht bekommen, wenn sie Jupyter notebooks oder ähnliche Umgebungen verwenden, die solche Dateien nie in den gleichern (Projekt)Ordner speichern würden, wie ich auf meiner lokalen Festplatte, wo die Dateileichen vom letzten Jahr vergessen herumlungern ..

Vielleicht sollte ich auch immer einen neuen Projekt-Orden anlegen. Dann gibt es das Problem auch nicht.
Und ich vergebe neuerdings sinnvollere Dateinamen. .... :D

Vielen Dank!
Ich dachte schon, ich hätte die Python installation mit pip "kaputt gemacht".