Otomatiskan Kode Python Bersih | oleh Louis de Bruijn

Linting adalah proses menjalankan alat kontrol kualitas yang melakukan analisis statis kode sumber untuk memeriksa potensi kesalahan.

Panduan gaya untuk Python adalah PEP-8. Alat linting populer yang memverifikasi kepatuhan terhadap panduan gaya PEP-8 adalah flake8. Ini dapat diinstal pip dan dapat dengan mudah dijalankan dengan $ flake8 python_code.py. Output menunjukkan semua perbedaan antara kode sumber dan panduan gaya PEP-8.

flake8 linting untuk skrip Python.

flake8 dapat ditingkatkan dengan beberapa paket pip-installable untuk meningkatkan dukungannya untuk peringatan tertentu. autoflake menghapus pernyataan impor yang tidak digunakan, pep8-naming memeriksa konvensi penamaan variabel seperti snake_case, dan flake8-docstrings mengaktifkan linting untuk dokumen bergaya NumPy atau Google. isort adalah alat linting populer lainnya yang menyortir pernyataan impor Anda.

Anda dapat menghapus dukungan untuk peringatan atau kesalahan tertentu di salah satu setup.cfg, tox.ini, atau .flake8 dalam proyek Anda atau gunakan argumen baris perintah.

--max-line-length=120
--ignore=D100,D104,E203,E402,E501,W503
--docstring-convention=google
D100: Missing docstring in public module
D104: Missing docstring in public package
E203: Whitespace before ‘:’ (interferes with black formatting)
E402: Module level import not at top of file
E501: Line too long (82 > 79 characters)
W503: Line break occurred before a binary operator

Saya lebih suka menambah panjang baris maksimum menjadi 120 karakter, menggunakan dokumen gaya Google, dan mengabaikan peringatan dan kesalahan di atas. kesalahan E203 mengganggu alat pemformatan kode saya, black.

Jika Anda menggunakan petunjuk tipe Python untuk membubuhi keterangan argumen fungsi Anda dengan tipe variabel, Anda mungkin juga tertarik pada mypy, pemeriksa tipe statis opsional untuk Python yang bertujuan untuk menggabungkan manfaat pengetikan dinamis (atau “bebek”) dan pengetikan statis.