Here I will demonstrate a few things Reform plug-in is capable of.
You can move up and down by function declarations, blocks of code and words.
import pytest | |
@pytest.fixture() | |
def real_db(_django_cursor_wrapper): | |
_django_cursor_wrapper.enable() | |
def test_index(client, real_db): | |
response = client.get('/') |
I hereby claim:
To claim this, I am signing this object:
import textwrap | |
# def task_with_text(text, width): | |
# new_text = textwrap.TextWrapper() | |
# new_text.width = width | |
# return new_text | |
#print task_with_text("Napoleon was born on the island of Corsica to a relatively modest family of noble Italian ancestry.", 7) | |
# def justify_line(line, width): |
#!/bin/sh | |
PRINTS=`git diff --cached -U0 | grep ^+ | grep -E '\bprint(\b|_)'` | |
if [ -n "$PRINTS" ]; then | |
echo "ERROR: you are going to commit prints:\n" | |
git diff --cached -U0 -G'\bprint(\b|_)' | |
exit 1 | |
fi |
Не нужно смешивать табы с пробелами. Конкретно для тебя проблема решается автозаменой таба на 4 пробела по всему коду. Также стоит настроить редактор, чтобы он заменял табы на пробелы при вводе.
Класс реализует две пересекающиеся функциональности. Возможно, имеет смысл разделить на два? Стоит помнить, что разделение, хоть и упрощает каждый класс в отдельности, всю систему может усложнить или хотя бы банально привести к большему количеству кода.
Альтернатива разделению - обособление частей кода отвечающих за линейное и за криволинейное движение. Сейчас это сделано для методов, но остаются аттрибуты, вызовы этих методов и хак в конструкторе.
alert('Hello world') |
# Just two lines anywhere, still copies data before pickling | |
import copy_reg | |
copy_reg.pickle(buffer, lambda b: (buffer, (bytes(b),))) |
# Say we have this | |
class BaseCache(object): | |
def cached(self, timeout=None): | |
"""A decorator for caching function calls""" | |
def decorator(func): | |
@wraps(func) | |
def wrapper(*args, **kwargs): | |
cache_key = get_key(func, args, kwargs) | |
try: | |
result = self.get(cache_key) |
# Предполагая m2m такого вида | |
class Tag(model.Model): | |
text = model.CharField() | |
class News(models.Model): | |
tags = models.ManyToManyField(Tag) | |
def index(request): | |
# Текущий мастер умеет инвалидировать по событиям на связанных моделях, |