Argparse in python3.2.3 auf windows 7 scheint nicht zu analysieren

Seit ich Python auf Windows läuft, hier ist das nächste Problem, das ich mit argparse begegnet habe und für das ich keine Lösung gesehen habe. Ich verwende optparse vorher. Hier ist mein Code:

import argparse parser = argparse.ArgumentParser( description = 'Test description') # main description for help parser.add_argument('-d', '--dir', # -u or --user option dest = "dir", help = 'directory to start with') args = parser.parse_args() print(args.dir) 

Aber wenn ich diesen Code mit entweder laufen

 code.py -d test code.py --dir test 

Ich bekomme immer eine None als Ausgabe. Ich glaube, das ist etwas Triviales, und etwas offensichtlich habe ich übersehen, aber ich kann es nicht sehen.

Tanks

Alex

  • Os.path.islink auf windows mit python
  • Xlwings mit python 3.5 unter Windows
  • Ein super seltsamer Bug von os.path.abspath
  • Running Scapy auf Windows mit Python 2.7
  • Pyinstaller und onefile build verursacht Fehler beim Laden von Python DLL (Fehlercode 14001)
  • Wie funktioniert python-keyring unter Windows?
  • Tensorflow r1.0: konnte keine Version finden, die die Anforderung tensorflow erfüllt
  • Wie benutzt man espeak mit Python
  • One Solution collect form web for “Argparse in python3.2.3 auf windows 7 scheint nicht zu analysieren”

    Das Problem scheint von Windows verursacht zu werden und wie der Code versucht wird, auf der Befehlszeile ausgeführt zu werden. Im angegebenen Beispiel wurde das Test-Skript direkt auf der Kommandozeile aufgerufen, ohne python vor dem Code, wie in dieser Antwort vorgeschlagen .

    Wenn der Code wie folgt ausgeführt wird

     python code.py 

    Das erwartete Verhalten wird gesehen, und die Argumente werden korrekt im Code analysiert.

    So ist entweder das Setup des Windows-Systems stil unvollständig, oder der Vorschlag in der oben genannten Link ist unvollständig.

    Python ist die beste Programmiersprache der Welt.