2009-03-24 18 views
0

[gelöst]Lernen Python 3.0 auf Ubuntu

Ich zwickte die Präferenzen in Komodo Edit und endete mit:

nicht auto indent

erlauben keine Dateiinhalte Registerkarte Einstellungen außer Kraft setzen

bevorzugen Tabulatoren über Räume

4 Leerzeichen pro indent

4 Breite jeder Registerkarte char

Ich setzte auch Komodo, um Whitespace und Tabs zu zeigen, die enthüllt die aufgedeckten Abschnitte enthüllt.

ja - es ist ein bisschen wählerisch. :)

[/ gelöst]

ich Python 3.0 auf Ubuntu 8.10 mit Komodo-edit ide installiert haben.

Ich bin gerade in Python und ich lese durch Visual Quickstart Guide Python 2. ed. (Das folgende Beispiel stammt aus diesem Buch). Ich bekomme einige wirklich frustrierende Fehler und würde Ihre Gedanken wirklich schätzen.

Ich habe Tabs mehrmals neu eingegeben und überprüft.

Ich fange an zu denken, dass etwas in der Installation oder Einrichtung falsch gelaufen ist.

Ich tippte die folgende in Komodo-edit:

#!/usr/bin/python3.0 
for row in range(1, 10): 
    for col in range(1, 10): 
     p = row * col 
     if p < 10: 
      print(' ', end = '') 
     print(row * col, ' ', end = '') 
    print() 

kann ich nicht testen dies mit Python IDLE ist 3 - kann nicht scheinen, dass die Version von IDLE installiert zu bekommen. für den Moment versuche ich aus der Shell zu rennen.

zunächst nur "Python" mit dem Programm zu nennen ...

PYTHON [1] $ python ktest.py 
     File "ktest.py", line 6 
     print(' ', end = '') 
        ^
    SyntaxError: invalid syntax 

nun verschiedene Möglichkeiten, den Aufruf der Python-Compiler ...

PYTHON [1] $ python ktest.py 
      File "ktest.py", line 6 
      print(' ', end = '') 
         ^
     SyntaxError: invalid syntax 


PYTHON [1] $ python3 ktest.py 
     File "ktest.py", line 4 
     p = row * col 
        ^
    TabError: inconsistent use of tabs and spaces in indentation 


PYTHON [1] $ python3.0 ktest.py 
     File "ktest.py", line 4 
     p = row * col 
        ^
    TabError: inconsistent use of tabs and spaces in indentation 
+0

Da Sie Python neu sind, rate ich Ihnen dringend, mit 2.x – Vasil

+0

auch zu beginnen, markieren Sie "Leerzeichen über Tabs bevorzugen", die besser und empfohlen in pep8 ist. – nosklo

+0

danke. Ich werde die Voreinstellung ändern, wenn ich nach Hause komme. @vasil: Können Sie Ihren Vorschlag für den Start mit 2.x erweitern? – m42

Antwort

2

Das Beispiel verwendet Python 2 versucht. x, seit python scheinbar auf python2.x (für einige x), nicht python3.0 (was gut ist, da die meisten Programme sind für 2.x).

Die zweiten beiden Beispiele verwendeten Python 3.0. Sie haben Tabulatoren und Leerzeichen in Ihrer Quelle gemischt und sollten die Tab-Zeichen loswerden (nicht wiederholen - verwenden Sie regulären Ausdruck ersetzen). Python 3.0 ist diesbezüglich sensibler als 2.x - Sie können dasselbe Verhalten unter Verwendung von python -tt für 2.x erhalten.