파이썬 에서 함수의 이름을 선택하는 것에 대해 혼란 스럽습니다 . 때때로 파이썬 내장 함수는 function 및 string method 와 같이 필수적 입니다. 로 : 때때로 그들은 그러한없는 이름이 같은 긴급하지 않다 예를 들어, 그리고 하지 않습니다 .print
find
len
calculate_len
type
find_type
나는 print
우리가 사용하지 않는 (ie None
) 값 을 반환하고 (예 : 화면에 문자열을 표시하는) 값 을 반환 하므로 그 이름이 필수적이라는 것을 이해할 수 있습니다 .
그러나 len
우리가 사용하고 무언가를 수행하는 값을 반환합니다 (즉, 시퀀스 또는 매핑에있는 항목 수 계산). 이름은 중요 하지 않습니다 . 다른 한편으로, find
문자열 메소드 (as len
)는 우리가 사용하고 무언가를 수행하는 값을 반환하며 그 이름은 필수적 입니다.
이 질문을 한 것은 Caesar 암호를 사용하여 문자열을 암호화하고 해독하는 스크립트를 검토하는 것입니다. 검토자는 다음과 같이 말했습니다.
그냥 직감 : 기능은 일을합니다. 따라서 함수의 좋은 이름은 필수적
rotate_letter
입니다rotated_letter
. 대신을 사용 합니다 .
rotated_letter
숫자로 회전 된 문자를 나타내는 단일 문자 문자열을 반환합니다. 내가 사용, 더 나은 무엇인지 모른다 rotated_letter
는 같은 값을 반환로 randint
함수 임의 모듈 , 그것을하지 않습니다 generate_randint
.
따라서이 경우 사용할 값을 반환하는 함수의 이름을 어떻게 지정해야합니까? 나는 이름을 확인해야합니다 필수적 아니면 그냥 명사 . 다른 경우는 같은, 그것을 수행하는 방법을 분명 부울 기능 등, is_even
그리고 is_palindrome
우리가 단지처럼을 예 / 아니오 질문 , 또한 기능 만 수행하고 반환이 아닌 사용 치 ( None
등) print
및 목록 방법 sort
.
len
예를 들어, "길이"로 생각하는 것이 좋습니다. 인수에 대한 메타 수준의 설명을 얻습니다.