Python: срез и удаление за один шаг

У меня есть рекурсивная функция Python, которая удаляет один элемент из копии списка перед передачей меньшего списка в рекурсию: B = A[:] B.remove(C) Recursion(B) Это прекрасно работает, но кажется более элегантным: Recursion(A[:].remove(C)) К сожалению, A[:].remove(C) Remove A[:].remove(C) yeilds None . (Почему?) Есть ли элегантный способ сделать это в одной строке?

Django получает связанные объекты в отношениях «многие ко многим»

Я довольно новичок в Django и Python в целом, и я работаю над своим первым сольным приложением, и мне немного сложно понять, как что-то сделать с моими моделями: class A(models.Model): bs = models.ManyToManyField('B', null=True, blank=True, related_query_name='the_thing', db_table='A_B_relation') name = models.CharField(max_length=50,unique=True) def __str__(self): # __unicode__ on Python return self.name class B(models.Model): url = models.URLField(null=True, blank=True) name […]

Могу ли я использовать map / imap / imap_unordered с функциями без аргументов?

Иногда мне нужно использовать многопроцессорность с функциями без аргументов. Хотел бы я сделать что-то вроде: from multiprocessing import Pool def f(): # no argument return 1 # TypeError: f() takes no arguments (1 given) print Pool(2).map(f, range(10)) Я мог бы выполнить Process(target=f, args=()) , но я предпочитаю синтаксис map / imap / imap_unordered . Есть […]

Производит ли этот алгоритм перетасовки каждую перестановку с равномерной вероятностью?

Я видел, как конкретный алгоритм наивного перетасовки предвзято, и я чувствую, что в основном получаю это, и я понимаю, как алгоритм Фишера-Йейса не предвзято. У меня есть следующий алгоритм, который я впервые подумал о том, как перетасовать список. Я знаю, что он потребляет в два раза больше памяти и работает в ненужном большом времени, но […]

Регулярное выражение Python, условный поиск

Я пытаюсь разбить это предложение "Mr. Smith bought cheapsite.com for 1.5 million dollars, ie he paid a lot " \ "for it. Did he mind? Adam Jones Jr. thinks he didn't. In any case, this " \ "isn't true… Well, with a probability of .9 it isn't." В список ниже. Mr. Smith bought cheapsite.com for […]

проверка типа на основе python

У меня есть код, который выглядит так: def transform_incoming_json_item(item, things=[]): if isinstance(item, list): for thing in item: things.append(process_thing(thing)) elif isinstance(item, dict): things.append(process_thing(item)) return things Есть ли более питонический способ сделать это, одновременно делая только один вызов process_thing (сохраняя проверку типа и два случая, цикл не нужен)? (Примечание: «больше pythonic» добавлено в редактировании, чтобы уточнить вопрос.)

Попробовать утверждения (Python)

Недавно я обнаружил заявление try (я довольно новый), и я знаю об except , но у меня есть некоторые вопросы: 1) Как я могу использовать finally ? 2) Можете ли вы иметь несколько except с разными ошибками? Не могли бы вы привести несколько примеров этого?

Проблемы с пониманием сельдерея

Это мой первый опыт изучения сельдерея и джанго. Я установил последнюю версию сельдерея ( celery==3.1.17 ) и rabbitmq ( amqp==1.4.6 ) внутри моего virtualenv. Я изучаю сайт сельдерея . models.py: from django.db import models # Create your models here. class Count(models.Model): x = models.IntegerField() def __unicode__(self): return self.x views.py: def home(request): if request.POST: form = […]

Как модульные тесты импортируют модули, которые они тестируют?

(Новый для Python, старый парень Java.) Я выполнил рекомендации по настройке проекта Python (как описано здесь: Какая лучшая структура проекта для приложения Python? ). Моя структура тогда: artman `– artman +– artman.py +– util.py `– test `– util_test.py … и мой тестовый код безуспешно пытается импортировать то, что внутри util.py, что он собирается проверить: import […]

Как добавить префикс к существующему формату записи python

В моем коде я получаю регистратор от моего клиента, затем я делаю материал и регистрирую свой анализ на регистраторе. Я хочу добавить свой собственный префикс в журнал, но я не хочу создавать свой собственный форматировщик, просто чтобы добавить свой префикс к существующему. Кроме того, я хочу удалить свой префикс после завершения моего кода. Просмотрев документацию, […]

Python - лучший язык программирования в мире.