2011-09-12 3 views
5

편집 : 나는 방금 표준 라이브러리 "curses"를 사용하여 유사한 동작을 얻을 수 있음을 발견했습니다. 예를 들어 YouTube에서 어떻게 작동하는지에 대한 몇 가지 데모가 있습니다. http://www.youtube.com/watch?v=Bj-H9uPEa5UIDLE 내부의 특정 화면 위치에 문자열을 인쇄 할 수 있습니까?

이상한 바보 같은 질문입니다.하지만 파이썬에 대해 많이 알지 못해서 궁금합니다. 어떻게 작동하는지 궁금합니다. . 터미널에서 또는 IDLE을 사용할 때 특정 화면 위치에 문자열을 인쇄 할 수있는 방법이 있습니까?

나는 더 잘 설명하려고 노력할 것입니다. 예전에 코모도 64, 애플 II 또는 ZX 스펙트럼에서 작은 프로그램을 만들었던 옛날을 기억하십니까?

10 LOCATE 30, 40 : PRINT "안녕하세요!"

내가 알고 그냥 궁금해서 당신이 특정 위치에 문자열을 출력하고 싶다면 그 일 동안 당신이 뭔가를 작성하는 데 사용 특정 위치에 문자열을 인쇄하도록 파이썬에 지시하는 방법이 있습니다. 그리고 실제로 얼마나 많은 열과 얼마나 많은 행이 IDLE 창 안에 표시되는지 알 수있는 방법이 있습니다. 영어 이후

내가 또한

감사합니다 :-) 조금 더 나은이 개념을 설명하는 모형 무승부를 기록했습니다 내 모국어가 아닌.

Mockup screen to explain what I mean

+4

를 사용, 가자 IDLE와 curses를 포용합니다. 또는 자신의 절반을 다시 구현하십시오. 이는 상당한 고통입니다. – delnan

+0

유휴 상태에서는 불가능합니다. – Roger

답변

11

이 IDLE에서 작동하는지 모르겠어요,하지만 어떤 정상 터미널에서와 :이 화려한 것을 원하는 경우

import sys 
def print_there(x, y, text): 
    sys.stdout.write("\x1b7\x1b[%d;%df%s\x1b8" % (x, y, text)) 
    sys.stdout.flush() 

Ansi-Escape Sequences

+0

답변 해 주셔서 대단히 감사합니다. 터미널에서 작동합니다. – Cesco

+0

@rumpel 설명해 주실까요? – Caltor

+0

@Caltor : Ansi Escape Sequences를 설명하는 위의 링크를 따르십시오. 이것들은 터미널 소프트웨어에 의해 해석됩니다. – rumpel

관련 문제