Niedziałający kod, który działał...

0

Cześć wszystkim. Jestem totalnym newbim, więc moje problemy mogą wydawać się błachę...

droga= input ("wybierz droge")
if droga == "1":
print blablabla

Wywala mi invalid syntax. Problem polega na tym, że wcześniej działało bez zarzutu. Po napisaniu kilkunastu zdań w cudzysłowie i podzieleniu ich na kilka linijek wyskoczyło mi coś takiego...

Przesiałem się z Pythona2 na Pythona3, może to jest źródło problemu?

0

Porobiłeś jakieś chińskie wcięcia to nie działa. Spróbuj to sformatować normalnie.

0

Normalnie tzn? Błąd podświetla mi przy "droga"

0

Normalne w tym przypadku znaczy, że takie pythonowe, tam ważne są wcięcia:

droga= input ("wybierz droge")
if droga == "1":
    print blablabla
0

Wiem, że chodzi o strukturę kodu. Ta jeśli chodzi o komendy jest dobra. Było ok, dopóki tekstu "blabla" który jest bardzo długi nie podzieliłem na kilka linijek. Kiedy był w jednej było ok

0
 Imie = input("Jak masz na imie")
Oczy = input("Jaki masz kolor oczu?")
Wzrost = input("Ile masz wzrostu?")

 
print (#"A wiec masz na Imie %s, Twoje Oczy sa %s,i mierzysz %s.") (Imie, Oczy, Wzrost)



print ( \

"""

Dochodzisz do wielkiej, kamiennej bramy. Nie potrafisz określić wieku tych murów,
jednak sądząc po dziurach z któyrych wyrasta trawa dochodzisz do wniosku,
że mury te oparły się w przeszłości wielu oblężeniom:
1. Wejdź do miasta
2. Skręć w prawo
     """)

droga = input("Wybierz opcje:")
if droga == "1":
    print( """
Idziesz wzdluz muru, waska wydeptana sciezka. Dochodzisz do rozwidlenia...
1. Skręć w prawo
2. Idź Prosto
""")

elif droga == "2":
    print ("Przechodzisz przez bramę. Mijasz znudzonego strażnika, spoglądającego na Ciebie spode łba")
else:
    print ("Serio?)
         
0

W tym miejscu masz niewykomentowanego printa (a zapewne chciałeś go też wykomentować skoro pod spodem otwierasz nowego):
print (#"A wiec masz na Imie %s, Twoje Oczy sa %s,i mierzysz %s.") (Imie, Oczy, Wzrost)
Weź sobie wykomentuj całe. Poza tym, tutaj masz nie zamknięty cudzysłów:
print ("Serio?)

1

Działa pod 3.0.
Używaj IDE (PyCharm jest bardzo dobry).

Imie = input('Jak masz na imie')
Oczy = input('Jaki masz kolor oczu?')
Wzrost = input('Ile masz wzrostu?')


print('A wiec masz na Imie {0}, Twoje Oczy sa {1},i mierzysz {2}.'.format(Imie, Oczy, Wzrost))

print('''
Dochodzisz do wielkiej, kamiennej bramy. Nie potrafisz określić wieku tych murów,
jednak sądząc po dziurach z któyrych wyrasta trawa dochodzisz do wniosku,
że mury te oparły się w przeszłości wielu oblężeniom:
1. Wejdź do miasta
2. Skręć w prawo''')

droga = input('Wybierz opcje:')

if droga == "1":
    print('''
Idziesz wzdluz muru, waska wydeptana sciezka. Dochodzisz do rozwidlenia...
1. Skręć w prawo
2. Idź Prosto
''')

elif droga == "2":
    print('Przechodzisz przez bramę. Mijasz znudzonego strażnika, spoglądającego na Ciebie spode łba')

else:
    print('Serio')
 
0

Bolbo, zainstalowałem PyCharma, jak sugerowałeś

Teraz wywala mi to:
SyntaxError: Non-ASCII character '\xc5' in file C:/Users/Pawcio/Desktop/Phyton/Pierwszy Program.py on line 10, but no encoding declared; see http://python.org/dev/peps/pep-0263/ for details

Czy ma to związek z tym, że początkowo pisałem ten kod w Pythonie2?

1

Wstaw na początku:

#!/usr/bin/python
# -*- coding: <encoding name> -*-

druga linia najlepiej:
# -*- coding: utf-8 -*-

Na jakiej licencji będzie twoja gra?

0

Wszystkie 3 mam wstawić na początku?

Jak widać do gry daleko :D Tak na serio to chce zrobić prostą tekstówkę aby przećwiczyć sobie instrukcje warunkowe i pętle

0

Nie trzy, bo tu są dwie. Wstaw ostatnią (ostatnią wersję drugiej).

0

Poszło, lecz nic nie mogę wpisać...

Imie = input('Jak masz na imie')
File "<string>", line 1, in <module>
NameError: name 'Pawel' is not defined

1

Użyj raw_input zamiast input:

Imie = raw_input("Jak masz na imie")
Oczy = raw_input("Jaki masz kolor oczu?")
Wzrost = raw_input("Ile masz wzrostu?")
0

Działa. Dzięki Pany!

Ostanie pytanie. Dlaczego wcześnie działało a teraz był problem? W Pythonie2 była komenda raw_input, po przejściu na 3 input, a w PyCharmie z powrotem raw_input. Znaczenie ma interpreter? W Codesklupotrze działała mi pierwotna wersja.

1

W python 2.X nie zadziała Ci input tak jak chcesz, dopiero w 3.X. Więc odpowiadając na to pytanie - tak wersja ma znaczenie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1