Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailem Python 2.7.10 SyntaxError

Dobrý den,
jsem úplný začátečník v Pythonu. Nainstalovala jsem si Python 2.7.10 a momentálně mám problém s tím, že většina příkazů mi v shellu vyhazuje SyntaxError: invalid syntax, jako např.

def posloupnost(n):
    for i in range(1, n+1):
        print i

def suda_posloupnost(n):
    for i in range(1, (n+1)/2):
        print i*2

def mocniny_dvojky(n):
    for i in range(1, n+1):
        print 2**i

apod.

Na jiném pc (ve škole, konfiguraci neznám) fungovaly a já nemůžu přijít na to, kde dělám chybu. Dala jsem si pozor na odsazení, překontrolovala zápisy, 'googlila', ale na nic dalšího jsem nepřišla.

Mám ntb, win 7, intel core i3,2.40 ghz, ram 4 gb

Předem moc děkuju za odpovědi a rady.

Předmět Autor Datum
za normálnych okolností vo win7 je v štandartnom nastavení systému povolené spúšťanie skriptov a pod…
audax 04.10.2015 16:40
audax
Díky. Zkusila jsem, ale nepomohlo. nový
Kristýna P. 04.10.2015 17:39
Kristýna P.
Mozna blba otazka, ale spoustis to v shelu, nebo v pythonu - shell pouziva jiny jazyk v shellu: [g… poslední
gilhad 05.10.2015 22:42
gilhad

Mozna blba otazka, ale spoustis to v shelu, nebo v pythonu - shell pouziva jiny jazyk

v shellu:

[gilhad@merleAvr(1) ~]$ def posloupnost(n):
bash: syntax error near unexpected token `('
[gilhad@merleAvr(1) ~]$       for i in range(1, n+1):
bash: syntax error near unexpected token `('
[gilhad@merleAvr(1) ~]$              print i
bash: print: command not found
[gilhad@merleAvr(1) ~]$ 

tedy:
co se stane, kdyz spustis Python? Mela bys dostat jeho prompt

[gilhad@merleAvr(1) ~]$ python
Python 2.7.9 (default, Mar 15 2015, 10:21:44) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 

a kdyz to tam nabusis s odsazenima, tak by to melo fungovat:

[gilhad@merleAvr(1) ~]$ python
Python 2.7.9 (default, Mar 15 2015, 10:21:44) 
[GCC 4.9.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> 
>>> def posloupnost(n):
...     for i in range(1, n+1):
...             print i
... 
>>> posloupnost(5)
1
2
3
4
5
>>> 

akorat si musis dat bacha, aby ta odsazeni bystejna (tedy bud same mezery, nebo same taby), jakmile to zacnes michat (nebo tvuj editor), tak to python vyhodnoti spatne.

Me (na linuxu, ale to by vadit nemelo, jen se trochu lisi prompty a chybove hlasky shellu), ten tvuj priklad funguje, zkus totez zopakovat na Windows a hod sem printscreen, jak to nechodi, protoze to asi bude nejaka drobnost, kterou prehlizis.

pokud to mas v souboru, tak ho spoustej pomoci pythonu, ne jen tak rovnou bez niceho:

[gilhad@merleAvr(1) ~]$ cat x.py
def posloupnost(n):
    for i in range(1, n+1):
         print i

posloupnost(5)
 

[gilhad@merleAvr(1) ~]$ python x.py
1
2
3
4
5
[gilhad@merleAvr(1) ~]$ 

Zpět do poradny Odpovědět na původní otázku Nahoru