"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > Python에서 자리 표시자 형식을 사용할 때 \"TypeError: 모든 인수가 변환되지 않음\"을 방지하는 방법

Python에서 자리 표시자 형식을 사용할 때 \"TypeError: 모든 인수가 변환되지 않음\"을 방지하는 방법

2024-11-03에 게시됨
검색:798

How to Avoid \

자리 표시자를 % 형식으로 대체할 때 TypeError

% 형식을 사용하여 {0}과 같은 자리 표시자를 대체하려고 하면 개발자는 다음과 같은 문제를 겪을 수 있습니다. 오류: "TypeError: 문자열 형식화 중에 일부 인수가 변환되지 않았습니다." 이 오류는 부적절한 형식, 특히 이전 스타일 % 형식과 새로운 스타일의 {} 형식이 혼합되어 발생합니다.

이전 스타일 % 형식은 아래 예시와 같이 형식 지정에 %d와 같은 자리 표시자를 사용합니다. :

'It will cost $%d dollars.' % 95

그러나 여러 값을 활용하는 경우 튜플로 제공해야 합니다.

"'%s' is longer than '%s'" % (name1, name2)

반면, 새로운 스타일의 {} 형식 지정에서는 {} 및 .format 메서드와 같은 자리표시자를 사용합니다. 이 두 가지 스타일을 혼합하지 않는 것이 중요합니다. 템플릿 문자열에 {} 자리 표시자가 포함된 경우 %.

# Correct:
'It will cost ${0} dollars.'.format(95)
"'{0}' is longer than '{1}'".format(name1, name2)

# Incorrect (Do not mix % and {}):
'It will cost ${0} dollars.' % 95
"'%0' is longer than '%1'" % (name1, name2)

이 형식 지정 지침을 준수하면 개발자는 "TypeError: 문자열 형식 지정 중에 일부 인수가 변환되지 않았습니다." 오류 및 형식을 해결할 수 있습니다. 문자열이 올바르게 입력되었습니다.

릴리스 선언문 이 글은 1729221315에서 재인쇄되었습니다. 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3