IDE für Python



  • hi,

    welche IDE bzw. debugger könnt ihr mir für python/pyqt empfehlen?

    bye



  • Eric, pydev (Eclipse Plug-In), Komodo.



  • was ist hier falsch? beispiel aus dem tutorial: http://openbook.galileocomputing.de/python/python_kapitel_12_001.htm#mjcd1790d94142bd3f3a263231dbf0e3f7

    >>> def neues_konto(inhaber, kontonummer, kontostand,
    ...                 max_tagesumsatz=1500):
    ...     return {
    ...         "Inhaber" : inhaber,
    ...         "Kontonummer" : kontonummer,
    ...         "Kontostand" : kontostand,
    ...         "MaxTagesumsatz" : max_tagesumsatz,
    ...         "UmsatzHeute" : 0
    ...         }
    ... k1 = neues_konto("Heinz Meier", 567123, 12350.0)
      File "<stdin>", line 10
        k1 = neues_konto("Heinz Meier", 567123, 12350.0)
         ^
    SyntaxError: invalid syntax
    >>>
    


  • geri. schrieb:

    was ist hier falsch? beispiel aus dem tutorial: http://openbook.galileocomputing.de/python/python_kapitel_12_001.htm#mjcd1790d94142bd3f3a263231dbf0e3f7

    >>> def neues_konto(inhaber, kontonummer, kontostand,
    ...                 max_tagesumsatz=1500):
    ...     return {
    ...         "Inhaber" : inhaber,
    ...         "Kontonummer" : kontonummer,
    ...         "Kontostand" : kontostand,
    ...         "MaxTagesumsatz" : max_tagesumsatz,
    ...         "UmsatzHeute" : 0
    ...         }
    ... k1 = neues_konto("Heinz Meier", 567123, 12350.0)
      File "<stdin>", line 10
        k1 = neues_konto("Heinz Meier", 567123, 12350.0)
         ^
    SyntaxError: invalid syntax
    >>>
    

    Der code ist richtig. Jedoch hast du den interaktiven modus im Interpreter falsch bedient.

    Vorangehende "..." deuten darauf hin, dass es noch zum eingerückten teil gehört.
    Wenn du die Funktionsdefinition eingetippt hast, drücke dann zwei mal Enter, bis du in den normalen EIngabemodus gelangst, welcher dir das anzeigt: ">>>"

    Erst jetzt sollst du die Funktion aufrufen.

    >>>def a():
    ...    return 123
    ...
    >>> b = a()
    

    SO funktioniert es.





  • #!/usr/bin/python
    # -*- coding: utf-8 -*-
    
    import xml.dom.minidom
    
    datei = open("testxml2.xml", "r")
    print datei.read()
    dom = xml.dom.minidom.parse(datei)
    datei.close()
    
    def dokument(domina):
        for node in domina.childNodes:
            print "NodeName:", node.nodeName,
            if node.nodeType == node.ELEMENT_NODE:
                print "Typ ELEMENT_NODE"
            elif node.nodeType == node.TEXT_NODE:
                print "Typ TEXT_NODE, Content: ", node.nodeValue.strip()
            elif node.nodeType == node.COMMENT_NODE:
                print "Typ COMMENT_NODE, "
            dokument(node)
    
    dokument(dom)
    

    was bedeutet diese fehlermeldung?

    >>> 
    <?xml version="1.0" ?>
    <Adressen>
      <Adresse>
        <!--Adresse von Sir Spamalot-->
        <Name>
          Sir Spamalot
        </Name>
        <Anschrift>
          Spamhouse 123
        </Anschrift>
      </Adresse>
      <Adresse>
        <!--Adresse von Lady of the Lake-->
        <Name>
          Lady of the Lake
        </Name>
        <Anschrift>
          West End 23
        </Anschrift>
      </Adresse>
      <Adresse>
        <!--Adresse von Brian-->
        <Name>
          Brian
        </Name>
        <Anschrift>
          Im Flying Circus
        </Anschrift>
      </Adresse>
    </Adressen>
    
    Traceback (most recent call last):
      File "C:\xml_test.py", line 8, in <module>
        dom = xml.dom.minidom.parse(datei)
      File "C:\Python26\lib\xml\dom\minidom.py", line 1918, in parse
        return expatbuilder.parse(file)
      File "C:\Python26\lib\xml\dom\expatbuilder.py", line 928, in parse
        result = builder.parseFile(file)
      File "C:\Python26\lib\xml\dom\expatbuilder.py", line 211, in parseFile
        parser.Parse("", True)
    ExpatError: no element found: line 1, column 0
    


  • Kenn mich mit minidom nicht aus.

    Geraten:
    Aber kann es sein, dass deine xml-datei mit einer Leerzeile beginnt?

    Das würde diese meldung erklären:

    ExpatError: no element found: line 1, column 0
    

    Das klingt, als ob der Parser versucht in einer leeren Zeile etwas zu finden. Findet aber keine Elemente, da da nichts steht.
    Fang halt mal die Exception ab und schau weiter was passiert. Oder entferne die Leerzeile am Anfang der xml Datei. (Oder schau besser in die Doku 😛 )

    Keine Gewähr. Hab mich mit xml.dom.minidom nicht aus, habe mich damit nicht befasst. Nur geraten.



  • geri. schrieb:

    was ist hier falsch? beispiel aus dem tutorial: http://openbook.galileocomputing.de/python/python_kapitel_12_001.htm#mjcd1790d94142bd3f3a263231dbf0e3f7

    Das Buch ist Mist.


Anmelden zum Antworten