주제: TypeError: ‘int’ 개체를 호출할 수 없습니다.
쓰다: 2023-03-02
코드 샘플
테스트 결과의 값을 입력으로 받아 테스트 결과의 최대값과 총합을 계산한 경우
score = input()
my_score = list(map(int, score.split()))
max = max(my_score) # 오류발생
sum = sum(my_score) # 오류발생
위의 코드를 실행하면, 유형 오류발생합니다.
그 이유는 변수 이름 max와 sum이 Python에서 중복 예약어이기 때문입니다.
이 경우 아래와 같이 변수 이름을 다른 변수로 변경하면 문제 없이 코드가 실행됩니다.
score = input()
my_score = list(map(int, score.split()))
score_max = max(my_score) # 변수명 변경
socre_sum = sum(my_score) # 변수명 변경
Python 예약어(키워드, 예약어)
예약어란 무엇입니까?
예약어는 특정 기능을 수행하기 위해 미리 예약된 단어로 다음과 같이 다른 식별자 이름으로 사용할 수 없습니다.
나. 변수명이나 메소드명을 사용할 수 있다.
Python에서 기본적으로 설정되어 있는 예약어는 다음 명령어로 확인할 수 있습니다.
- 키워드 가져오기
- 키워드.kwlist
import keyword
keyword.kwlist
('False',
'None',
'True',
'__peg_parser__',
'and',
'as',
'assert',
'async',
'await',
'break',
'class',
'continue',
'def',
'del',
'elif',
'else',
'except',
'finally',
'for',
'from',
'global',
'if',
'import',
'in',
'is',
'lambda',
'nonlocal',
'not',
'or',
'pass',
'raise',
'return',
'try',
'while',
'with',
'yield')
각 예약어 설명
진실 | 참/거짓을 표현하는 데이터 유형인 Boolean, Bool은 참과 거짓 두 가지 값만 가집니다. Python에서 숫자 0은 False이고 0 이외의 모든 정수는 True입니다. |
잘못된 | |
없음 | 값이 없거나 null 값을 의미합니다. NoneType이라는 데이터 유형에 존재합니다. |
그리고 | 둘 다 참이면 참 둘 중 하나라도 거짓이면 거짓 둘 다 False이면 False |
~처럼 | 모듈 이름 뒤에 as가 오는 경우 as 다음의 이름은 가져온 모듈과 직접 연결됩니다. |
주장하다 | 프로그램에 디버깅 어설션을 추가하는 편리한 방법 |
부서지다 | 루프 문(while 문 또는 for 문)을 종료할 때 사용되는 예약어입니다. 조건이 참이면 루프를 끊습니다. |
수업 | 클래스를 정의할 때 사용되는 예약어 |
계속해 | 조건이 참이면 루프가 계속됩니다. |
데프 | 새로운 기능을 정의할 때 사용되는 예약어 |
삭제 | 인덱스를 사용하여 항목을 삭제하기 위한 예약어 |
열하나 | else if의 줄임말. 조건이 거짓이면 elif 문이 실행됩니다. 여러 조건을 지정하고자 할 때 사용하는 예약어 |
다른 | if 문의 조건이 거짓이면 else로 넘어가서 다음 명령이 실행됩니다. Elif는 여러 개 사용할 수 있지만 하나만 사용할 수 있습니다. |
제외하고 | 오류 예외 처리와 관련된 예약어 |
마지막으로 | 오류 예외 처리와 관련된 예약어 |
~을 위한 | 반복 예약어 |
에서 | 일부 특정 모듈(특정 특성 또는 기능)을 현재 네임스페이스로 가져옵니다. |
글로벌 | 변수 범위와 관련된 예약어 |
만약에 | 조건부 예약어 |
수입 | 주어진 모듈의 모든 요소를 현재 네임스페이스로 가져오는 예약어입니다. |
~ 안에 | 값이 시퀀스 데이터 유형(목록, 튜플, 문자열 등)에 포함되어 있는지 여부를 테스트하는 예약어입니다. |
~이다 | 두 값의 참조(참조, 포인터)를 비교하는 연산자입니다. ==는 값을 비교하는 연산자이며 is와 다릅니다. |
람다 | 익명 함수를 생성하는 연산자 |
국지적이지 않은 | 변수 범위와 관련된 예약어 |
~ 아니다 | True와 False의 반대 값을 반환하는 예약어.
(예: >>> not False의 결과는 True) |
또는 | 둘 다 참이면 참
둘 중 하나라도 참이면 참 둘 다 False이면 False |
일어나다 | 조건문 아래에 pass를 사용하면 조건문은 실행되지 않고 다음 명령이 실행된다. |
승강기 | 프로그래머가 Python에서 일반적으로 표시되는 오류 외에 오류 상황을 정의하고 예외를 throw해야 할 때 사용되는 예약어입니다. |
돌려 주다 | 값을 반환하고 함수 문을 종료하기 위해 함수 내에서 사용되는 예약어 |
시도 | 오류 예외 처리와 관련된 예약어 |
~하는 동안 | 반복문을 위한 예약어. |
~와 함께 | _enter_ 및 _exit_와 함께 사용되는 예외 문의 예약어 |
생산하다 | return과 유사한 역할을 하는 함수 내에서 사용되는 예약어. 그러나 차이점은 Yield가 생성기를 반환한다는 것입니다. |