Например мы задаем какой-то сложный пайплайн из множества шагов, прописываем его в одну строку и получаем что-то не читаемое:
Например где-то вы пропустили пробелы и код слипся в сложноразделимые строки:
Например где-то вы не знаете как лучше самому перенести строки:
Конфигурацию black
можно провести в файле pyproject.toml
Существует специальное расширение: black-formatter
Так же в settings.json
можно добавить следующие настройки:
Например мы задаем какой-то сложный пайплайн из множества шагов, прописываем его в одну строку и получаем что-то не читаемое:
Например где-то вы пропустили пробелы и код слипся в сложноразделимые строки:
threshold = np.percentile(res, 0.5)
recall, precision,f1,cf = (
m.recall_score(test_y,res>=threshold,pos_label=1),
m.precision_score(test_y,res>=threshold,pos_label=1),
m.f1_score(test_y,res>=threshold,pos_label=1),
m.confusion_matrix(test_y,res>=threshold,labels=(1,0)).T,
)
Примените autopep8
и у вас нет ошибок pep8:
Например где-то вы не знаете как лучше самому перенести строки:
Конфигурацию autopep8
можно провести в файле pyproject.toml
Существует специальное расширение: autopep8
Так же в settings.json
можно добавить следующие настройки:
Например мы задаем какой-то сложный пайплайн из множества шагов, прописываем его в одну строку и получаем что-то не читаемое:
Например где-то вы пропустили пробелы и код слипся в сложноразделимые строки:
threshold = np.percentile(res, 0.5)
recall, precision,f1,cf = (
m.recall_score(test_y,res>=threshold,pos_label=1),
m.precision_score(test_y,res>=threshold,pos_label=1),
m.f1_score(test_y,res>=threshold,pos_label=1),
m.confusion_matrix(test_y,res>=threshold,labels=(1,0)).T,
)
Примените yapf
и код согласно codestyle google:
Например где-то вы не знаете как лучше самому перенести строки:
Конфигурацию yapf
можно провести в файле pyproject.toml
. главное не запутаться в регуляторах.
Существует специальное расширение: yapf
Так же в settings.json
можно добавить следующие настройки:
В процессе работы вы добавляли новые библиотеки в ваш ноутбук в случайном порядке и выстроилась громадная гора импортов:
import plotly.graph_objects as go
import numpy as np
import sklearn.metrics as m
import polars as pl
from pathlib import Path
from functools import partial
from src.config import compose_config
import src.clients
import src.metrics
from catboost import CatBoostClassifier
from src import model
isort
позволит отсортировать вам все в нужном порядке:
Важным параметром isort является профиль автоформаттера, что бы сортировка импортов совпадала с требованиями форматера. Isort поддерживает стили: black, pycharm, google и т.д.
Существует специальное расширение: isort
Так же в settings.json
можно добавить следующие настройки:
{
"[python]": {
"editor.defaultFormatter": "ms-python.black-formatter",
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.organizeImports": "explicit"
},
},
}