TypeError: 'type' object is not subscriptable
첨자 가능한(subscriptable)이라는 개념입니다. []는 첨자 연산자(subscript operator)라고 부릅니다.
a = [1,2,3,4]가 있다면 a[0]처럼 첫 번째 원소를 가리키는 것이 첨자 연산자의 역할입니다. 파이썬은 슬라이스를 사용해 범위까지 가르킬 수 있습니다.
IndexError: list index out of range
if(a)
try:
exception
# 올바른 값을 넣지 않으면 에러를 발생시키고 적당한 문구를 표시한다.
def rsp(mine, yours):
allowed = ['가위','바위', '보']
if mine not in allowed:
raise ValueError
if yours not in allowed:
raise ValueError
try:
rsp('가위', '바')
except ValueError:
print('잘못된 값을 넣었습니다!')
# 190이 넘는 학생을 발견하면 반복을 종료한다.
school = {'1반' : [150, 156, 179, 191, 199], '2반' : [150, 195, 179, 191, 199]}
try:
for class_number, students in school.items():
for student in students:
if student > 190:
print(class_number, '190을 넘는 학생이 있습니다.')
# break # 바로 상위 for문은 종료되지만 최고 상위 for문은 종료되지 않는다.
raise StopIteration
# 예외가 try 문 안에 있지 않으면 에러 발생시 프로그램이 멈춘다.
except StopIteration:
print('정상종료')
# 모든 에러 처리
try:
list = []
print(list[0]) # 에러가 발생할 가능성이 있는 코드
text = 'abc'
number = int(text)
except:
print('에러발생')
# 에러 이름 확인
try:
list = []
print(list[0]) # 에러가 발생할 가능성이 있는 코드
except Exception as ex: # 에러 종류
print('에러가 발생 했습니다', ex) # ex는 발생한 에러의 이름을 받아오는 변수
# 에러가 발생 했습니다 list index out of range
try:
import your_module
except ImportError:
print('모듈이 없습니다.')
항상 새롭네...
'{BE} Python 3.1x' 카테고리의 다른 글
파이썬을 쉘로 써보기 (0) | 2021.05.26 |
---|---|
파이썬 수 체계 (0) | 2021.05.26 |
python 빌드해서 에러 문구 교체해 봄. (0) | 2021.05.26 |
how to see the encoding (0) | 2021.05.26 |
AI 기본은 필수... (0) | 2021.05.20 |