본문 바로가기

[파이썬]/문법2

Python | for..else 문법으로 이중 for loop을 continue하기 for..else 프로그램을 짜다 보면 for loop이 정상적으로 실행됐는지 중간에 break 됐는지 확인해야 할 상황이 생긴다. 보통은 is_broken 등의 플래그를 두는 식으로 짠다. 하지만 파이썬은 for..else라는 특이한 문법을 지원한다. 만약 for loop이 성공적으로 실행됐다면 else를 실행한다. # w/o for..else is_broken = False for i in range(100): if not testcase(i): print(f'{i} failed') is_broken = True break if not is_broken: print('all passed!') # w/ for..else for i in range(100): if not testcase(i): print.. 2022. 12. 29.
Python | 클래스 변수와 클래스 메소드 (Class Variable, Class Method) - 클래스 변수 - 인스턴스 변수 - 인스턴스 메소드 - 클래스 메소드 - 스태틱 메소드 위의 개념들은 쓸 때마다 혼동됩니다. 어디다 적어놓지 않으면 나중에 또 까먹을 게 뻔합니다. 그러니 클래스 메소드를 한 번 알아봅시다. class A: var = 1 위와 같이 클래스를 정의했다고 해봅시다. 여기서 var은 클래스 변수입니다. 인스턴스들의 클래스 변수들도 클래스 변수의 값과 같은 것은 굳이 안 봐도 알 수 있습니다. >>> a = A() >>> b = A() >>> A.var 1 >>> a.var 1 여기서 클래스의 클래스 변수를 수정해봅시다.>>> A.var = 2 >>> b.var 2 >>> a.var 2클래스 변수를 수정하면 해당 클래스의 인스턴스들에 모두 적용됩니다. 하지만 인스턴스의 클래스 .. 2018. 6. 27.