Moje skrypty pythona działają poprawnie od IDLE, ale kiedy próbuję je uruchomić z wiersza poleceń, wszystko idzie nie tak. Najpierw miałem problemy z importowaniem pygame, ale dodałem C: \ Python27 \ Lib \ site-packages do zmiennej środowiskowej PYTHONPATH i wszystko było dobrze, pomyślałem. Jednak teraz, gdy próbuję uruchomić coś z wiersza poleceń, otrzymuję:Python nie może obsłużyć importowania za pomocą wiersza polecenia
C:\Users\Ian Sinke\Documents\Pong>python pong.py
'import site' failed; use -v for traceback
Traceback (most recent call last):
File "pong.py", line 3, in ?
import pygame
File "C:\Python27\Lib\site-packages\pygame\__init__.py", line 27, in ?
import sys, os, string
File "C:\Python27\Lib\os.py", line 63, in ?
import ntpath as path
File "C:\Python27\Lib\ntpath.py", line 401
backslash, dot = (u'\\', u'.') if isinstance(path, unicode) else ('\\', '.')
^
SyntaxError: invalid syntax
Jakieś pomysły?
To nie jest problem lokalizacyjny; gdy próbuję uruchomić inny skrypt z linii poleceń, otrzymuję to:
C:\Users\Ian Sinke\Documents>python app.py
'import site' failed; use -v for traceback
Traceback (most recent call last):
File "app.py", line 4, in ?
import urllib2
File "C:\Python27\Lib\urllib2.py", line 92, in ?
import base64
File "C:\Python27\Lib\base64.py", line 346
with open(args[0], 'rb') as f:
^
SyntaxError: invalid syntax
i że składnia jest zdecydowanie OK ...
Pong.py zaczyna tak:
#import sys
import math
import pygame
import time
from pygame.locals import *
# Helper functions
def centerdist(paddletop, balltop):
return balltop - paddletop - 30
# Constants
BLACK = 0, 0, 0
pygame.init()
Czy jesteś pewien, że skrypt jest dokładnie taki sam jak ten, z którego korzystasz z IDE? Wygląda na to, że instrukcja if znajduje się w niewłaściwym wierszu ze stactkrace. –
To jest dokładnie ten sam skrypt, instrukcja if nie jest nawet w moim pliku! Jest w C: \ Python27 \ Lib \ ntpath.py. Ta składnia również wydawała mi się dziwna ... – ian93
Dlaczego używasz 'ntpath' zamiast' os.path'? – japreiss