2016-10-27 2 views
0

다음 코드를 사용하여 터미널에 인쇄 할 수없는 이유를 알 수 없습니다.파이썬 스크립트로 터미널에 인쇄 할 수없는 이유는 무엇입니까?

#!/usr/bin/env python3 
import sys 
def main(): 
    sys.stdout.write("Hello") 

난 그냥 간다, 파이썬 파일이 발견 된 디렉토리로 이동하여 파일 실행을하고

./filename 

터미널 인쇄 아무것도 실행되지하여 터미널에서 프로그램을 실행 해요 줄 바꿈. sys.stdout.write ("string")을 사용하지 않으면 터미널에 어떻게 인쇄합니까?

+0

파이썬에서는 그다지 많이하지 않았지만 정의한 후에'main()'을 호출 할 필요가 없습니까? 또는'print ("Hello")'를'main()'함수에 제한하지 않고 직접 출력 할 수도 있습니다. – Wildcard

+0

또한 프로그래밍 질문은 StackOverflow.com에서 더 잘 속합니다. Bash, Sed 또는 Awk를하지 않는 한 여기에 주로 살고 있습니다. 사이트에 오신 것을 환영합니다. :) – Wildcard

+0

따뜻한 환영에 감사드립니다 : D –

답변

5

먼저 Unix/Linux 셸 프로그래밍에만 해당되지 않는 한 Stackoverflow에 대한 프로그래밍 질문을하십시오.

파이썬은 기본적으로 main (또는 다른 어떤) 함수를 실행하지 않습니다.

#!/usr/bin/env python3 
import sys 
sys.stdout.write("Hello") 

또는 스크립트가 실행될 때이 기능을 유지하지만, 전화를 할 경우 :

#!/usr/bin/env python3 
import sys 

def main(): 
    sys.stdout.write("Hello") 

if __name__ == '__main__': 
    main() 

두 번째 방법을 사용해야 당신이려고하는 경우에
당신은 할 중 하나를 수 스크립트를 다른 파일로 가져 오지 만 그렇지 않으면 첫 번째 파일을 사용하십시오.

또한 파이썬 print 함수를 사용할 수 있습니다.이 함수는 기본적으로 stdout에 씁니다.

+0

답변 해 주셔서 감사합니다. 또한, 잘못된 장소에 게시하는 것에 대해 유감스럽게 생각합니다.이 포럼을 많이 사용하지 않았습니다. 앞으로의 게시물을 위해 올바른 영역에 머물러 있습니다. –

+0

@ LeventeMakai, 멋지다. 스택 Exchange 사이트는 전통적인 의미에서 실제로 포럼이 아닙니다. 질문과 답변 사이트입니다. [둘러보기 페이지] (http://unix.stackexchange.com/tour)로 시작한 다음 [도움말 센터] (http://unix.stackexchange.com/help)를 살펴보고 작동 방식을 확인하십시오. . 한 가지, 먼저 주어진 답이 문제를 해결 한 경우 대답의 왼쪽에있는 체크 표시를 클릭하여 문제를 해결하십시오. :) – Wildcard

관련 문제