2017-01-10 1 views
0

단어 결과 :실행을 일치하지 않는 형식에 대한 파이썬 문서는 파이썬 문서 <a href="https://docs.python.org/3/library/string.html#format-specification-mini-language" rel="nofollow noreferrer">Format Specification Mini-Language</a>에

일반적인 규칙은 당신이라는 것처럼 빈 형식 문자열 ("")와 동일한 결과를 생성한다는 것입니다 값에 대한 str().

는하지만 모두 python2 및 python3에서 실제 결과와 일치하지 않습니다

In [1]: "".format(100) 
Out[1]: '' 

In [2]: str(100) 
Out[2]: '100' 
+1

'format (100, '') == '100'' 그것은 그것이 의미하는 것입니다. 당신이 그것을하는 방식으로 당신은'{} '. format (100)'이 필요합니다. 여기에는 공백 형식 문자열을 가진 * 자리 표시 자 *가 있습니다. – jonrsharpe

답변

4

당신은 빈 템플릿하지 빈 형식 문자열 있습니다. 형식 문자열은 {..} 자리 표시 자에 옵션 : 뒤에 오는 부분입니다. 자리 표시자를 완전히 생략함으로써 값을 배치 할 곳이 없습니다.

그래서 다음이 값에 str() 같은 생산 :

format() function에 두 번째 인수로 빈 문자열처럼
>>> '{:}'.format(100) 
'100' 
>>> '{}'.format(100) 
'100' 

: 모든 경우에

>>> format(100, '') 
'100' 

형식 문자열이 비어 있습니다.

전체 Format Specification Mini-language은 자리 표시 자의 {:...} 부분에 사용할 수있는 형식 지정 작업이나 format()의 두 번째 인수로만 문서화 한 것을 놓친 것 같습니다. 템플릿 문자열 (str.format() 방법을 적용하는 부분)의 경우 위의 섹션 인 Format String Syntax section을 읽어야합니다.

관련 문제