2012-12-14 15 views
7

Podążam za tutorialem dla początkujących na temat Pythona, istnieje małe ćwiczenie, w którym muszę dodać dodatkowe wywołanie funkcji i wydrukować linię między wierszami, działa to dobrze, jeśli wydrukuję pustą linię między wywołania funkcji, ale jeśli dodaję pusta linia wydruku na końcu mojego happyBirthday() Otrzymuję błąd wcięcia, bez dodanej linii drukowania wszystko działa dobrze, wszelkie sugestie, dlaczego?Wydrukuj pustą linię?

Oto kod:

def happyBirthday(person): 
    print("Happy Birthday to you!") 
    print("Happy Birthday to you!") 
    print("Happy Birthday, dear " + person + ".") 
    print("Happy Birthday to you!") 
    print("\n") #error line 

happyBirthday('Emily') 
happyBirthday('Andre') 
happyBirthday('Maria') 
+1

Opublikuj cały swój kod. – Blender

+8

Możesz po prostu napisać "print (" Wszystkiego najlepszego z okazji urodzin! \ N ")' –

+0

Kod pocztowy z dodanym dodatkowym nadrukiem. –

Odpowiedz

10

Będziesz zawsze tylko nacięcie błąd, jeśli nie jest właściwie tiret błąd. Dwukrotnie sprawdź, czy ostatnia linia jest wcięta tak samo, jak pozostałe linie - spacje lub tabulatory. Najprawdopodobniej niektóre linie miały spacje (lub tabulatory), a druga linia miała tabulatory (lub spacje).

Zaufanie do komunikatu o błędzie - jeśli mówi coś konkretnego, załóżmy, że jest prawdziwe i ustal, dlaczego.

1

Dwa wspólne wydrukować pustą linię Python-

  1. starej szkoły sposób:

    print "hello\n"

  2. pisanie drukiem słowo sam by tego nie zrobił:

    print "hello"

    print

+0

Kod to Python3 w próbce OP. To nie zadziała. –

12

można po prostu zrobić:

print('') 

lub

print("") 

uzyskać pustą linię

+0

Komentarze już zidentyfikowały, że był to błąd tabs vs spaces. – Synchro

+0

Mogę powiedzieć, że jest to bardziej zgodny sposób niż 'print' lub' print() ', ponieważ robi to tak samo niezależnie od wersji Pythona. (Jeśli nie rozumiesz, co mówię, spróbuj 'print()' w _Python 2.x_.) –

2

nie rób

print „\ n "

w ostatnim wierszu. Da ci 2 puste linie.

0

I miał problemy z tym i się udało być problemem tabulacji w stosunku do problemu z przestrzenią. Jeśli nie widzisz tego w ten sposób, upewnij się, że jakikolwiek edytor, którego używasz, jest ustawiony na wyświetlanie symboli, ponieważ pokaże ci swoje tabulatory i spacje w taki sposób, że faktycznie je widzisz :)

Cieszę się, że znalazłem ten wątek jak zacząłem wydzierać włosy z frustracji.(Jestem nowym programistą)

Powiązane problemy