Мене бентежить вибір імен для моїх функцій в Python . Іноді Python вбудованих функцій є імперативом , таких як: printфункції і метод рядки find. Іноді вони не такі, як: lenйого ім'я не є обов'язковим, як calculate_len, наприклад, і typeне є find_type.
Я можу зрозуміти, що printповертає значення, яке ми не використовуємо (тобто None) і щось робить (тобто воно показує рядок на екрані), тому його ім'я є обов'язковим.
Але lenповертає значення, яке ми використовуємо і щось робить (тобто обчислює кількість елементів у послідовності чи відображенні.), А його ім'я не є обов'язковим . З іншого боку, findрядовий метод (as len) повертає значення, яке ми використовуємо і щось робить, а його ім'я є обов'язковим .
Запитавши це питання, це те, що я поставив скрипт, який шифрує та розшифровує рядок, використовуючи шифр Цезаря для перегляду. Рецензент сказав, що:
Просто відчуття кишки: функції роблять речі. Тож гарне ім’я функції є обов'язковим: я б використовував
rotate_letterзамістьrotated_letter.
rotated_letterповертає однолітерний рядок, який представляє букву, повернуту цифрою. Я не знаю, що краще, я використовував, rotated_letterяк він повертає значення, як randintфункція у випадковому модулі , це не так generate_randint.
Отже, як у цьому випадку я повинен назвати функцію, яка повертає значення, яке буде використано? Чи слід робити ім’я імперативом чи просто іменником . В інших випадках очевидно, як це зробити, такі як булеві функції , такі як, is_evenі is_palindromeми просто робимо це як питання так / ні , а також функції, які просто виконують і повертають не використовувані значення (тобто None), такі як printметод списку sort.
len, наприклад, краще вважати "довжину" - ви отримуєте мета-опис свого аргументу.