>  기사  >  백엔드 개발  >  str에 대한 자세한 설명과 해결책은 Python에서 호출할 수 없는 문제입니다.

str에 대한 자세한 설명과 해결책은 Python에서 호출할 수 없는 문제입니다.

高洛峰
高洛峰원래의
2017-02-13 16:14:101749검색

str 문제에 대한 자세한 설명과 해결책은 Python에서 호출할 수 없습니다

제기된 질문:

Python 코드에서 실행 프로세스 중에 오류 메시지가 발생했습니다.

Python 코드:

def check_province_code(province, country):
  num = len(province)
    
  while num <3:
    province = &#39;&#39;.join([str(0),province])
    num = num +1
    
  return country + province

실행 오류 메시지:

check_province_code(&#39;ab&#39;, &#39;001&#39;)
---------------------------------------------------------------------------
TypeError                 Traceback (most recent call last)
<ipython-input-44-02ec8a351cce> in <module>()
----> 1 check_province_code(&#39;ab&#39;, &#39;001&#39;)
  
<ipython-input-43-12db968aa80a> in check_province_code(province, country)
   3 
   4   while num <3:
----> 5     province = &#39;&#39;.join([str(0),province])
   6     num = num +1
   7 
  
TypeError: &#39;str&#39; object is not callable

문제 분석 및 문제 해결:

분석 오류 메시지, str은 호출 가능한 개체가 아니지만 실제로는 이전에 호출할 수 있었으며 Python API 문서에서는 Python의 내장 함수이므로 사용할 수 없는 이유는 무엇입니까?

계속해서 검증해 보겠습니다.

명령줄에서 str(123)을 실행하여 숫자를 문자열로 변환합니다.

>>> str(1233)
---------------------------------------------------------------------------
TypeError                 Traceback (most recent call last)
<ipython-input-45-afcef5460e92> in <module>()
----> 1 str(1233)
  
TypeError: &#39;str&#39; object is not callable

이제 문제는 명확하게 정의되었습니다. 잘 생각해보세요. 변수를 정의할 때 str이 무작위로 사용되었기 때문에 str 함수를 덮어썼다는 사실이 밝혀졌습니다. 다음과 유사한 작업을 수행했습니다.

str = &#39;123&#39;

기본 str 함수를 복원합니다.

Python 애플리케이션을 다시 시작하고 str을 덮어쓴 코드 부분을 제거합니다.

요약

Python에는 많은 함수와 클래스가 내장되어 있습니다. 변수를 직접 정의할 때 해당 이름을 덮어쓰거나 반복하지 마세요.

읽어주셔서 감사합니다. 도움이 되기를 바랍니다. 이 사이트를 지원해 주셔서 감사합니다!

Python에서 str을 호출할 수 없는 문제에 대한 자세한 설명과 해결책을 보려면 PHP 중국어 웹사이트를 주목하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.