2012-10-24 2 views
3

나는 1 년 이상 숭고한 텍스트 2를 사용해 왔으며 최근에 파이썬을 위해 그것을 사용하기 시작했습니다. Sublime은 Python 용 빌드를 내장하고 있습니다 (내장 된 2.7.3 용 또는 2.X 용). 파이썬 3.3.0을 사용하고 있습니다. 난 이미 숭고한 빌드 파일을 편집하고 그것을 변경 : 다른 스레드에서 유래에서 제안한 것처럼파이썬 3이 숭고한 텍스트 2와 함께 작동하지 않습니다

{ 
"cmd": ["python3", "-u", "$file"], 
"file_regex": "^[ ]*File \"(...*?)\", line ([0-9]*)", 
"selector": "source.python" 
} 

. 또한,

Name: Traceback (most recent call last): 
File "/home/andrew/grive/Documents/RandomProjects/PythonStuff/HelloWorld.py", line 32,  
in <module> 
x = input("Name: ") 
EOFError: EOF when reading a line 
[Finished in 0.1s with exit code 1] 

: 내가 빌드합니다 (Ctrl + B)를 실행할 때

x = input("Name: ") 
print("Welcome " + x) 
input() 

하지만 다음과 같은 오류가 맨 아래에있는 콘솔 : 나는 숭고한를 다시 시작하고 내 코드를 실행하려고 시도 나는 SublimeREPL과 파이썬 함수를 사용하여 빌트인 함수를 우회하려고했지만 파이썬 빌드를 2.7.3으로 검출하여 3.3.0 코드를 컴파일하지 않는다. 파이썬 3이 설치되어 있고, 우분투를 사용하고 있으며 터미널에 "python3"을 입력하면 Python이 올바른 버전의 터미널에서 실행됩니다.

그래서 나는 두 가지 질문이 있습니다

왜 내 python3.sublime 빌드가 작동하지를 어떻게 고칠 수 있을까요?

저는 리눅스 멍청이이기 때문에 빌드 파일에 액세스하는 데 문제가 있습니다. 나는 그들에게 한 번 갔지만 어떻게 지금은 잊어 버렸다. 그들은 /home/~.config/sublime-text-2/ etc etc에 있습니다.

.config 파일이 보이지 않습니다. 보너스 포인트는 어떻게 작동하는지 설명 할 수 있습니까?

답변

4

당신의 문제는 sublimetext 빌드 사용자 입력 받아 들일 수 없다는 것입니다 - 연결된 입력 스트림이 없습니다. 파이썬 버전은 부적절합니다.

그러나 입력 할 때 write a plugin이 가능합니다.


구성 파일의 경우 "환경 설정 -> 패키지 찾아보기"메뉴 항목을 사용하십시오.

+0

Ahl, Sublime을 사용하는 경우 Python 코드를 실행하기 위해 명령 줄을 사용해야합니까? IDLE을 실행하면 약간 덜 편리 할 수 ​​있기 때문에 테스트하는 가장 쉬운 방법이라고 가정합니다. –

+0

@ Andy093 : 나는 당신이 원하는 것을 정확하게 수행 할 수 있도록 플러그인을 작성했습니다. 그것은 약간 버그지만, 그것은 나를 위해 작동합니다. 내 편집보기 – Eric

1

'Python.sublime-build'파일을 'python'에서 'python3'으로 편집하는 OP 솔루션이 작동한다는 것을 알게되었습니다.

저도 같은 문제를 겪고 때 영업 이익의 솔루션은 나에게 도움이 때문에 나는 이것을 알고, 그리고 증거는 다음 줄에 있습니다

import sys 
print(sys.platform) 

전체 연습 코드 :

import sys 
print(sys.platform) 
print(2 ** 100) 
x = 'Spam!' 
print(x * 8) 
input('Press ENTER to exit...') 

파이썬으로 2.7 반환 값은 'linux2'입니다. 파이썬 3.3에서 반환 값은 'linux'입니다. 이것은 PVM을 사용하여 처음 발견되었습니다. Sublime 2에서 'Build'를했을 때 'linux2'가 출력되었습니다. OP의 메소드를 사용하여 출력을 'linux'로 변경 했으므로 이것이 올바른 일이라고 생각합니다 (가장 쉬운 방법).파이썬

빌드 출력 : Python3와

linux2 
1267650600228229401496703205376 
Spam!Spam!Spam!Spam!Spam!Spam!Spam!Spam! 
Press ENTER to exit...Traceback (most recent call last): 
    File "/home/sick/Python/script1.py", line 6, in <module> 
    input('Press ENTER to exit...') 
EOFError: EOF when reading a line 
[Finished in 0.0s with exit code 1] 

빌드 출력 :

linux 
1267650600228229401496703205376 
Spam!Spam!Spam!Spam!Spam!Spam!Spam!Spam! 
Press ENTER to exit...Traceback (most recent call last): 
    File "/home/sick/Python/script1.py", line 6, in <module> 
    input('Press ENTER to exit...') 
EOFError: EOF when reading a line 
[Finished in 0.1s with exit code 1] 

에는 프로그램 오류가 없다; 프로그램이 사용자 입력을 기다리고 있기 때문에 오류가 발생합니다 (제가 아는 한, 그러나 저는 4 장에서만 있습니다).

0

난 그냥 같은 문제를 했어 내가 터미널을 사용하여이 프로그램을 시작했을 때 나는 만 할 수있는 :

cd WayToFile 
python FileName 

모든 것이 이루어집니다. 아마도 모든 Python 버전에서 작동해야하는 방법 일 것입니다.

관련 문제