2011-11-02 2 views
2

% 문자열 주위에 작은 따옴표를 사용하지 않으려면 어떤 방법이 있습니까?% r을 사용하여 'this'를 방지하십시오.

내가 이렇게 노력하고 있어요 :

결과
playCmd = """osascript -e 'tell application "iTunes" to play track %r'""" % theSong 

: ... 트랙을 재생 'theSong' 하지 ... 내가 원하는처럼 theSong 을 추적 재생할 수 있습니다. playCmd.relpace를 사용 하겠지만, theong의 단일 따옴표 앞에 single-qoutes ('tell app ...')가 있기 때문에이 작업을 쉽게 수행 할 수 없습니다. 어떤 아이디어?

+1

'.format()'을 (를) 사용해 본 적이 있으십니까? 필자는 구문이 복잡한 문자열에 대해 훨씬 쉽게 작업 할 수 있다고 생각합니다. 예 :'Hello {person} '. format (person ='John ')' – Blender

답변

5

%s은 부적절한 이유가 있습니까? %r%s으로 바꾸는 것이 가장 먼저 시도하는 방법입니다.

+0

와우 ... 고마워! 당신이 상상할 수 있듯이, 저는 파이썬을 처음 접했습니다. 다시 한 번 감사드립니다! – tkbx

3

그렇다면 원하지 않는 %r; %s을 사용하면 여분의 따옴표없이 출력에 그대로 문자열을 배치합니다. 정말 무슨 일이 일어나고 있는지


%sstr(value)%r 통화 repr(value) 호출하는 것입니다.

관련 문제