2016/12/19
我感觉magic method 是python的进阶主题之一
有时候遇到, 感觉自己能看懂, 但是实际上不清楚其执行流程
官网文档看了一遍, 感觉不过瘾, 是否有更好的资料呢?
目的是什么
1. 对magic method做深入了解
2. 起码自己能用上
产品版本: Python2.7.x
操作系统: Linux
magic method: 类似__getattr__
这一类的, python里面很多, 各有不同作用
what is python magic method?
python magic method advanced
PHPz2017-04-18 10:08:32
모든 던더 이름을 한꺼번에 배우는 것은 권장하지 않습니다.
파이썬의 던더 이름은 언어 수준, 라이브러리 수준, 일반, 특정 모듈/클래스에서 사용되는 수준, 클래스 수준, 모듈 수준 등 셀 수 없이 많은 곳에서 사용되기 때문입니다. 너무 많아요! 카테고리별로 학습하고, 각 카테고리를 만나면 이해하는 것이 좋습니다. 예를 들어 연산자 오버로딩, 목록/딕셔너리인 척하여 동작 추가, 설명자, 모듈 가져오기 관련, 클래스 생성, 관리 및 자체 속성, 반복 및 비동기 반복, 컨텍스트 관리 등이 있습니다.
주로 가지고 있는 코드와 공식 문서에 따라 다릅니다. 이해가 안 되는 부분이 있으면 Google에 검색하면 기본적으로 문제가 없습니다. 그래도 궁금한 점이 있으면 소스 코드를 확인하세요. Python 소스 코드는 매우 잘 구성되어 있습니다.
大家讲道理2017-04-18 10:08:32
파이썬의 마법 메소드를 의도적으로 이해할 필요는 없다고 생각합니다. 파이썬을 발전시키고 싶다면 파이썬 소스 코드, 일부 공통 모듈 등을 읽으면 됩니다. 확실히 파이썬 매직 메소드에 대한 지식을 자주 보고 소스 코드가 어떻게 사용되는지 확인하세요. 어쩌면 저자가 왜 이런 식으로 사용하는지 생각해 보면 더 많은 통찰력을 얻을 수 있을 것입니다. 이해가 안가시면 그냥 검색엔진에 가서 찾아보세요. 한 가족의 의견은 참고용입니다.
大家讲道理2017-04-18 10:08:32
파이썬의 매직 메소드를 대략적으로 이해하고 싶다면 rafekettler의 영어 블로그를 읽어보세요
저는 이 영어 블로그를 여러 번 읽었고, 중국어로도 다시 말하려고 노력하고 제 블로그에 썼습니다. 그냥 저를 위한 광고라고 생각하시는데 제 재가공은 정말 괜찮은 것 같아요
물론 위의 글을 읽는 것만으로도 이러한 마법의 방법이 무엇을 할 수 있는지 알 수 있을 뿐입니다. 실제로는 더 훌륭한 소스 코드를 읽고 다른 사람들이 이를 능숙하게 사용하는 방법을 배워야 합니다. Python 코드를 작성할수록 점점 더 Python 코드가 되는 것처럼, 매직 메소드도 사용할수록 자연스럽게 느껴질 것입니다.