Hallo!
Ich bin ziemlich neu in diesem Gebiet und habe mit einem Anfänger Buch begonnen und arbeite jetzt mit 'Python von Kopf bis Fuß'.
Im ersten Kapitel soll ich ein Ordner mit der Modul und Setup Datei erstellen. Das hat alles problemlos geklappt. Nun soll ich in der Eingabeaufforderung in den Ordner wechseln (geschafft) und folgenden Befehl eingeben: $ c:\Python31\python.exe setup.py sdist
(also so habe ich das verstanden vielleicht ist das der Fehler) und es kommt jedes Mal die selbe Fehlermeldung:
Der Befehl '$' ist entweder falsche geschrieben oder konnte nicht gefunden werden.
Im Buch ist es so dargestellt dass wenn der Befehl funktioniert eine Menge Sachen passieren und man anschließend das Modul installieren kann.
Klingt einfach (Ich vermute mal dass das Problem an mir liegt)
Ich danke euch schonmal im Vorraus (:
Gruß
Modul Paket erstellen und installieren :)
- cofi
- Python-Forum Veteran
- Beiträge: 4432
- Registriert: Sonntag 30. März 2008, 04:16
- Wohnort: RGFybXN0YWR0
Hallo und willkommen zu Python und hier im Forum!
Ich kenne das Buch nicht, aber ich halte es fuer ziemlich unsinnig _damit_ zu starten. Beschaeftige dich lieber mit der Sprache selbst, statt damit wie man deren Programme/Module verteilt. Das kompliziert das ganze nur und ist nicht wirklich zielfuehrend.
Zum Problem selbst: Du sollst das "$" nicht eingeben, es symbolisiert den Prompt. Gib nur `c:\Python31\python.exe setup.py sdist` ein.
Du solltest auch Python 3.3 statt Python3.1 einsetzen. Alles was fuer 3.1 gilt, gilt auch fuer 3.3, letzteres ist aber aktuell
Ich kenne das Buch nicht, aber ich halte es fuer ziemlich unsinnig _damit_ zu starten. Beschaeftige dich lieber mit der Sprache selbst, statt damit wie man deren Programme/Module verteilt. Das kompliziert das ganze nur und ist nicht wirklich zielfuehrend.
Zum Problem selbst: Du sollst das "$" nicht eingeben, es symbolisiert den Prompt. Gib nur `c:\Python31\python.exe setup.py sdist` ein.
Du solltest auch Python 3.3 statt Python3.1 einsetzen. Alles was fuer 3.1 gilt, gilt auch fuer 3.3, letzteres ist aber aktuell
Michael Markert ❖ PEP 8 Übersetzung ❖ Tutorial Übersetzung (3.x) ⇒ Online-Version (Python 3.3) ❖ Deutscher Python-Insider ❖ Projekte
-
- User
- Beiträge: 5
- Registriert: Freitag 18. Oktober 2013, 21:45
Danke für eure schnelle Hilfe und die schöne Begrüßung (:
Ich verstehe auch selbst nicht so ganz warum das im ersten Kapitel vorkommt aber bis zum erstellen eines Moduls konnte man einsehen dass man lange Quellcodes einfach vermeiden kann und hat dabei auch noch vieles gelernt (for-Schleifen, Listen...) .
Ich habe es genauso eingegeben wie ihr es gesagt habt nur kommt jetzt folgender Fehler:
Das System kann den angegebenen Pfad nicht finden.
(Wenn jetzt alle den Kopf schütteln-Ich habe mit der Eingabeaufforderung noch nie zuvor gearbeitet )
Edit: Mir fällt gerade ein kann es sein dass ich die setup Datei falsch erstellt habe? Ich habe es genauso wie im Buch gemacht Metadaten abgeschrieben und ausgefüllt.
Ich verstehe auch selbst nicht so ganz warum das im ersten Kapitel vorkommt aber bis zum erstellen eines Moduls konnte man einsehen dass man lange Quellcodes einfach vermeiden kann und hat dabei auch noch vieles gelernt (for-Schleifen, Listen...) .
Ich habe es genauso eingegeben wie ihr es gesagt habt nur kommt jetzt folgender Fehler:
Das System kann den angegebenen Pfad nicht finden.
(Wenn jetzt alle den Kopf schütteln-Ich habe mit der Eingabeaufforderung noch nie zuvor gearbeitet )
Edit: Mir fällt gerade ein kann es sein dass ich die setup Datei falsch erstellt habe? Ich habe es genauso wie im Buch gemacht Metadaten abgeschrieben und ausgefüllt.
-
- User
- Beiträge: 5
- Registriert: Freitag 18. Oktober 2013, 21:45
@sirius: danke für den Tipp! Das Verzeichnis ist jetzt richtig bei mir war es "c:\python32\python.exe" (also der Befehl: c:\python32\python.exe setup.py sdist)
Anscheinend habe ich den Befehl jetzt richtig eingegeben weil keine Fehlermeldungen mehr kommen. Aber es passiert auch nichts.
Es werden daraufhin keine Vorgänge in der Eingabeaufforderung dargestellt, anders als im Buch. Es wird nur wieder ein Befehl erwartet.
Anscheinend habe ich den Befehl jetzt richtig eingegeben weil keine Fehlermeldungen mehr kommen. Aber es passiert auch nichts.
Es werden daraufhin keine Vorgänge in der Eingabeaufforderung dargestellt, anders als im Buch. Es wird nur wieder ein Befehl erwartet.
@SchweresHobby: Du kannst ja mal ein ``print('Hallo')`` in die ``setup.py`` einfügen. Das müsste dann ja ausgegeben werden wenn die Datei ausgeführt wird.
-
- User
- Beiträge: 5
- Registriert: Freitag 18. Oktober 2013, 21:45
@blackjack: gleich mal ausprobiert (: sieht so aus
c:\users\...\desktop\programmierung\schachtler> c:\python32\python.exe setup.py sdist
Hallo
c:\users\...\desktop\programmierung\schachtler>
(Schachtler ist der Name des Moduls)
Können vielleicht meine Metadaten falsch sein? Ich hab es genauso wie im Buch und habe noch eine Version im Internet gefunden. Ist das egal?
Ich kopiere sie mal beide hin (mit ein paar weniger Infos)
(so laut buch, hat irgendwie beim ausführen nicht funktioniert und hat immer gleichen Fehler angezeigt (line 5 version, Invalid Syntax)
from distutils.core import setup
setup(
name='schachtler'
version = '1.0.0',
description = 'Einfache Ausgabe geschachtelter Listen',
py_modules = ['schachtler']
)
(so aus dem Internet, verwende ich momentan und scheint zu funktionieren)
from distutils.core import setup
__version__ = "1.0.0"
c:\users\...\desktop\programmierung\schachtler> c:\python32\python.exe setup.py sdist
Hallo
c:\users\...\desktop\programmierung\schachtler>
(Schachtler ist der Name des Moduls)
Können vielleicht meine Metadaten falsch sein? Ich hab es genauso wie im Buch und habe noch eine Version im Internet gefunden. Ist das egal?
Ich kopiere sie mal beide hin (mit ein paar weniger Infos)
(so laut buch, hat irgendwie beim ausführen nicht funktioniert und hat immer gleichen Fehler angezeigt (line 5 version, Invalid Syntax)
from distutils.core import setup
setup(
name='schachtler'
version = '1.0.0',
description = 'Einfache Ausgabe geschachtelter Listen',
py_modules = ['schachtler']
)
(so aus dem Internet, verwende ich momentan und scheint zu funktionieren)
from distutils.core import setup
__version__ = "1.0.0"
@SchweresHobby: Nun, wenn in der Datei im Grunde nichts drin steht, dann wird natürlich auch nichts gemacht. Den Aufruf der `setup()`-Funktion kannst Du natürlich nicht einfach weglassen, denn wenn die nicht aufgerufen wird, dann wird sie auch nicht ausgeführt.
Der Syntax-Fehler ist eigentlich auch recht offensichtlich. Die Argumente bei Funktionsaufrufen werden durch Kommas getrennt, und da fehlt eines.
Der Syntax-Fehler ist eigentlich auch recht offensichtlich. Die Argumente bei Funktionsaufrufen werden durch Kommas getrennt, und da fehlt eines.
@SchweresHobby: wenn Du nur Dinge aus einem Buch abtippst, ohne sie zu verstehen, dann ist der Lerneffekt doch auch nicht sonderlich groß. »setup« ist eine Funktion, die Du mit einigen Keyword-Argumenten aufrufst, die durch Kommas getrennt sein müssen. In Zeile 4 fehlt ein Komma. Die zwei Zeilen, die Du aus dem Internet hast, tun gar nichts.
-
- User
- Beiträge: 5
- Registriert: Freitag 18. Oktober 2013, 21:45
@blackjack: Super hat funktioniert! Vielen Dank.
Dass ich dieses fehlende Komma nicht gesehen habe... Naja
Dass ich dieses fehlende Komma nicht gesehen habe... Naja