Python에는 일련의 코드 스타일 규칙이 있으며, 그 중 가장 중요한 것은 PEP8입니다:
a = b + cPEP8을 준수하면 팀 작업이 용이해지고 가독성이 향상되며, 진입 장벽이 낮아지고, 테스트 자동화가 간편해지는 등의 장점이 있습니다.
PEP8에서는 단일 문자 변수 이름을 사용하지 않도록 권장합니다. 그러나 list comprehensions나 lambda에서 짧은 이름을 사용할 수 있나요? 왜 그런가요?
답변: 기본적으로 짧은 반복의 경우(예: 변수 마커로서 x, i, j와 같은 list comprehensions에서) 짧은 표현을 복잡하게 만들지 않기 위해 단일 문자 이름 사용이 허용됩니다. 복잡한 표현에는 의미 있는 이름을 주는 것이 좋습니다.
예시:
# 허용됨: squares = [x**2 for x in numbers] # 더 나은 예: squares = [number**2 for number in numbers]
사례 1
은행 프로젝트에서 일부 기능과 매개변수가 서로 다른 규칙(CamelCase, snake_case, 하이픈 사용)으로 명명된 문제가 발생했습니다. 팀의 새로운 구성원이 어디에서 이름이 사용되는지 혼동하여, 충돌 수정 및 변수 이름 변경에 거의 2주가 소요되었습니다.
사례 2
데이터 엔지니어링 프로젝트에서 들여쓰기가 지켜지지 않고, 탭과 공백이 혼합되었습니다. 이로 인해 다양한 개발 환경에서 SyntaxError가 발생하였고, 일부 개발자는 불필요한 공백 찾기에 몇 시간을 소비해야 했습니다.
사례 3
대규모 교육 포털에서는 짧은 변수 이름과 긴 변수 이름이 혼합되었습니다. 예를 들어 로그를 처리하는 함수는 l()로 명명하고, 로그인 처리기는 long으로 명명하여 많은 IDE에서 탐색에 많은 시간이 소요되었고, 리스트에서 요소 l과의 함수 사용에 혼란을 초래했습니다.