2014-04-29 2 views
-2

에서 나는이 서식을 사용하고 있었다 Python.I 매우 새로운 오전하지만 난 이것을 시도 때마다 구문 오류 :포맷 파이썬 3.0

formatter="%r%r%r%r" 

print formatter % (1,2,3,4) 

SyntaxError: invalid syntax 

이 링크 http://learnpythonthehardway.org/book/

에 주어진 예에서입니다

formatter = "%r%r%r%r

print formatter % (1, 2, 3, 4)

나는 인쇄 통계 관련 파이썬 3.0에 몇 가지 변화가 있었다 읽어 보시기 바랍니다 ements. 그 때문에?

Win-7 시스템에서 Python 3.4.0을 사용하고 있습니다.

+0

실제로 문자열 형식을 지정하는 방법은 [here] (https://docs.python.org/2/library/string.html#formatstrings)를 참조하십시오. 그러나 HeavyLight의 대답은 인쇄가 실패한 이유입니다. – aruisdante

답변

4

예. print 이제 정상적인 기능이며, 괄호 호출해야 다음 print 기능에 관한, 파이썬 3의 새로운 기능에 대한 자세한 내용은

print(formatter % (1,2,3,4)) 
+0

나는 어떤 점에서 그것이 키워드였던 이유를 전혀 알지 못했고, 전체적으로 '명백한 것'에 반하는 것처럼 보인다. – aruisdante

+0

감사합니다. 이걸 알아 냈어. – demouser123

1

here. 함수는 괄호를 열고 닫음으로써 특징 지어진다.

예. 파이썬 2에서

str.split() 
list.reverse() 
list.insert(0, 'hi') 

, 다음 구문 괜찮을 것 :

$ python2 
Python 2.7.6 (v2.7.6:3a1db0d2747e, Nov 10 2013, 00:42:54) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> num = 78 
>>> print 'The number is %d' %(num) 
The number is 78 
>>> 

그러나, 파이썬 3에서, print 함수이기 때문에, 당신은 열고 닫는 괄호가 필요합니다

$ python3 
Python 3.4.0b2 (v3.4.0b2:ba32913eb13e, Jan 5 2014, 11:02:52) 
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin 
Type "help", "copyright", "credits" or "license" for more information. 
>>> num = 78 
>>> print 'The number is %d' %(num) 
    File "<stdin>", line 1 
    print 'The number is %d' %(num) 
         ^
SyntaxError: invalid syntax 
>>> print('The number is %d' %(num)) 
The number is 78 
>>> 

해야 할 일 :

formatter="%r%r%r%r" 

print(formatter % (1,2,3,4))