ru_python_beginners | Unsorted

Telegram-канал ru_python_beginners - Python beginners

14446

Вопросы про Python для чайников. Cпам и троллинг неприемлем. Частозадаваемые вопросы: https://github.com/ru-python-beginners/faq/blob/master/README.md Правила группы: https://t.me/ru_python_beginners/1649981

Subscribe to a channel

Python beginners

я не брал могу карманы показать

Читать полностью…

Python beginners

Не, ну теперь точно спамбот, который прикидывается дурачком.

Читать полностью…

Python beginners

Сейчас при регистрации новые пользователи получают бонус в размере $1 на баланс для теста. Я не рискую ставить сумму больше, чтобы боты не накручивали и не сливали баланс.

Читать полностью…

Python beginners

Спасибо! Платная реклама сейчас для меня дороговата: проект только запустился, прибыли пока нет, а в разработку и запуск уже и так вложено немало. Действительно непросто на старте.

Читать полностью…

Python beginners

Может лучше рекламу купить?

Читать полностью…

Python beginners

Просто иногда интересно глянуть под капот

Читать полностью…

Python beginners

итератору по смыслу не откуда брать данные, чтобы родить другой итератор. ему придется буферизировать значения для такого

Читать полностью…

Python beginners

В питоне в большинстве случаев объект можно сделать итерируемым через генераторную функцию в __iter__, так что заводить класс под итератор не требуется.

Читать полностью…

Python beginners

Эт я знаю, вопрос в том, есть ли разница между такой реализацией как у list, когда лист внутри себя создает экземляр класса list_iterator и когда класс внутри себя, создает экземляр самого себя, который тоже итератор.
По сути и первая и вторая реализация делают одно и тоже. только в первом случае это делает через посредника list_iterator а во втором случае экземпляр самого себя. И тот и другой вариант же рабочий. Но во втором случае нет необходимости создавать второй класс как list_iterator чтобы передавать ему создание экземпляра

Читать полностью…

Python beginners

Но если смысл объекта в том, что он итератор, то в нём и нужно сделать __iter__ и __next__. Только лучше сделать items внутренним атрибутом (self._items = items)

Читать полностью…

Python beginners

list_iterator — это уже итератор, у него __iter__ возвращает самого себя.

class list:
def __iter__(self):
return list_iteartor(...)

class list_iterator:
def __iter__(self):
return self

def __next__(self):
...

Читать полностью…

Python beginners

Я еще узнал, если я конечно правильно все понял, что взависимости от того, какой объект передан в next то под капотом Cpython вызывается сишный iternext для итератора и сишный send с по умолчанию none для генератора

Читать полностью…

Python beginners

кажется ты перепутал с итератором

Читать полностью…

Python beginners

что еще за класс-генератор?

Читать полностью…

Python beginners

Если у тебя условно самописные списки и самописные итераторы для них

Читать полностью…

Python beginners

убер ирекламу из ника

Читать полностью…

Python beginners

Ща может по чатам поспамить с рекламой в имени прокатит 😁
Миллионером станет, там и рекламы закупит

Читать полностью…

Python beginners

Ану расскажи ка в контексте своего проекта как бы ты приготовил вишнёвый пирог?

Читать полностью…

Python beginners

да и я бы не доверял ноунейм-роутерам

Читать полностью…

Python beginners

Всем привет! Недавно запустил прокси-сервис (шлюз) для AI API. Цены поставил минимальные, маржа очень низкая, поэтому закупать масштабную платную рекламу попросту нерентабельно.

Подскажите, пожалуйста, где и в каких сообществах/форумах для разработчиков можно легально рассказать о таком проекте, чтобы это не сочли за спам и не забанили?

Буду очень благодарен за любые советы и площадки для органического старта!

Читать полностью…

Python beginners

хранить ссылку на оригинальный объект может не подойти, из за мутаций

Читать полностью…

Python beginners

ты уже начал читать материалы на тему?

Читать полностью…

Python beginners

Не надо так делать. Итератор должен в своём __iter__ возвращать самого себя

Читать полностью…

Python beginners

ты в моем примере кода спрашиваешь какой смысл у атрибута Index?

Читать полностью…

Python beginners

Не стоит делать саму коллекцию итератором. Это вводит в заблуждение. (если коллекция используется не как итератор, то какой смысл несёт атрибут index?)
Если хочется сделать объект итерируемым, обычно можно использовать генератор в качестве итератора:

class XsAndYs:
def __init__(self, xs, ys):
self.xs = xs
self.ys = ys

def __iter__(self):
yield from self.xs
yield from self.ys

Читать полностью…

Python beginners

Такой вопрос, насколько мне известно итератор у встроенных коллекций реализуется так:
- Допустим это list. Вызывая iter([1,2,3]), аргумент попадает в дандер итер самого класса list у которого под капотом Сpython делается - return list_iterator([1,2,3])

и уже iter класса list_iterator создает возвращает нам объект итератор.

Т.е класс list передает логику создания объекта итератора классу list_iterator


Теперь допустим я хочу создать свой класс, который должен уметь итерировать переданную в него коллекцию чуть по-другому(не важно как, просто чтобы аргументировать причину создания своей логики того, как нужно итерировать).

И вот в своем классе я пишу iter и next и вот мне лень передавать создание нового объекта итератора другому самописному классу - итератор, не хочу я его создавать и делаю внутри этого же своего класса iter(): return Мойкласс([1,2,3]) . Т.е внутри моего же класса реализую создание объекта итератора.


class MyIter:
def __init__(self, items):
self.items = items
self.index = 0

def __iter__(self):
return MyIter(self.items)

def __next__(self):
if self.index >= len(self.items):
raise StopIteration
value = self.items[self.index]
self.index += 2
return value


Это же будет точно так же работать ?

Читать полностью…

Python beginners

Ну условно в самом классе итераторе iter ретёрним self

А в пользовательском классе iter return class_iterator(самописный)_(obj)

Читать полностью…

Python beginners

класс в котором iter return self

Читать полностью…

Python beginners

ну если самописный класс итератор. То у него итер возвращает self, а уже в моем пользовательском классе итер возвращает самописный класс-генератор(список)

Читать полностью…

Python beginners

А как этого добиться?

Читать полностью…
Subscribe to a channel