English
Open in Telegram

Post 🖥 Полезный совет: Проверяйте код с использованием линтера

2 June 2023
P
Python RU
🖥 Полезный совет: Проверяйте код с использованием линтера Линтер анализирует код и ищет в нём ошибки, которые можно обнаружить автоматически. Перед отправкой изменений в репозиторий код всегда полезно проверять с помощью линтера. Различные IDE и редакторы кода, вроде pycharm и VS Code, содержат встроенные линтеры и подсвечивают проблемные участки кода. Программист сам принимает решение о том, следовать этим рекомендациям или нет. Поначалу сообщения об ошибках, выдаваемые линтерами, могут показаться непонятными. Для того чтобы в них ориентироваться, стоит уделить некоторое время изучению используемого линтера. Это себя окупит. Если говорить о линтерах, представленных инструментами командной строки, то в этой сфере я порекомендовал бы flake8. Этот линтер обладает разумными настройками, применяемыми по умолчанию. Обычно ошибки, о которых он сообщает, стоит исправлять. Если вы хотите строже относиться к своему коду — взгляните на pylint. Этот линтер способен выявлять множество ошибок, в число которых входят и те, о которых мы тут не говорим. ▍Примеры Файл, который нужно почистить В нижеприведённом коде (файл ping.py) можно увидеть некоторые проблемы и без применения линтера. import requests import os def PingExample(): result = requests.get("https://example.com/ping") Давайте проанализируем его с помощью flake8 и pylint. Результаты анализа кода с помощью flake8 flake8 ping.py ping.py:2:1: F401 'os' imported but unused ping.py:4:1: E302 expected 2 blank lines, found 1 ping.py:5:5: F841 local variable 'result' is assigned to but never used Результаты анализа кода с помощью pylint pylint ping.py ************* Module ping ping.py:1:0: C0114: Missing module docstring (missing-module-docstring) ping.py:4:0: C0103: Function name "PingExample" doesn't conform to snake_case naming style (invalid-name) ping.py:4:0: C0116: Missing function or method docstring (missing-function-docstring) ping.py:5:4: W0612: Unused variable 'result' (unused-variable) ping.py:2:0: W0611: Unused import os (unused-import) ping.py:2:0: C0411: standard import "import os" should be placed before "import requests" (wrong-import-order) -------------------------------------------------------------------- Your code has been rated at -5.00/10 (previous run: -5.00/10, +0.00) @pro_python_code
👍8🔥3❤1
15 · 2.6K ·

Nearby in the feed

PPython RU🖥 11 бесплатных курсов по Python 1. Автоматизация тестирования с помощью Selenium и Python - Stepik (INT) 2. Добрый, добрый Python - обучающий курс от Сергея БаPPython RU🔥 Бесплатный курс от Google: Learn Python basics for data analysis Основы Python для анализа данных — программирование на Python. https://learndigital.withgoogl
this message
PPython RU🖥 Если вы используете сторонние библиотеки — добавьте в репозиторий файл requirements.txt Если в проекте используются сторонние зависимости, об этом нужно сообщPPython RU🔍 Python: Создание сканера портов В этом уроке я проведу вас через процесс создания простого сканера портов с помощью Python. ▪ Читать @pro_python_code
PPython RUPython RU@pro_python_code · channel · Tech
12 326subscribers774average post reach
Venue feed Open in Telegram

An open public feed from the search index ChatCrawler — “Google for public Telegram”; refreshed as the venue is crawled. Times are UTC.

Public content only, official Telegram API. About · FAQ · Index limits · Remove a page · Catalog · Search · How we count