Povězte o své zkušenosti s Kafka a FastStream
Python
Kdy můžeme volat commit u Producera? Jak se vyhnout duplicitám při ručním commitování batch?
Poskytují se tři tabulky: 1. Uživatelé (users): - id (jedinečný identifikátor uživatele). - name (jméno uživatele). 2. Kurzy (courses): - id (jedinečný identifikátor kurzu). - name (název kurzu). - price (cena kurzu). 3. Kurzy studentů (student_courses): - id (záznamové ID). - student_id (identifikátor uživatele). - course_id (identifikátor kurzu). Požadavek: Zobrazit všechny uživatele, kteří zakoupili kurzy za více než 10 000, ve formátu: - user_name (jméno uživatele). - total_price (celková částka nákupů). Výchozí kód select * from users limit 10; select * from courses limit 10; select * from student_courses limit 10;
Lze vytvořit nekonečný iterátor a generátor? Co je k tomu potřeba?
```python import asyncio from typing import List, Optional class Chunk: def __init__(self, items: List[dict]): self.items = items @property def size(self) -> int: return len(self.items) class Producer: async def next(self) -> Optional[Chunk]: # vrací dávku dat nebo None ... async def commit(self, chunks: List[Chunk]) -> None: # potvrzuje úspěšné zpracování chunků ... class Consumer: max_batch_size = 100 async def consume(self, chunks: List[Chunk]) -> None: total_size = sum(chunk.size for chunk in chunks) if total_size > self.max_batch_size: raise ValueError("dávka je příliš velká") # zpracování dat ... producer = Producer() consumer = Consumer() async def process(): while True: chunk = await producer.next() if chunk is None: break try: await consumer.consume([chunk]) await producer.commit([chunk]) except Exception as e: print("chyba, ale pokračujeme:", e) continue if __name__ == "__main__": asyncio.run(process()) ```
Co dělat s problémovým kusem, který neustále způsobuje výjimky při zpracování? Jak se nezacyklit a jít dál?
Vysvětlete chování funkce s mutable výchozím argumentem. Co vytisknou printy?
Povězte mi o dekorátorech v Pythonu: co je to za vzor a jak implementovat dekorátor s argumenty?
Princip Liskovovy substituce — řekněte mi o tom podrobněji
Pověz mi o jednom ze svých posledních projektů, který ti zasáhl srdce. O jaký projekt šlo, co jsi tam přesně dělal a proč tě to zasáhlo?
Povězte mi o svém současném týmu a projektech v [bance/společnosti]
Povězte nám o principech OOP: zapouzdření, dědičnost, polymorfismus, abstrakce
Co víte o naší společnosti?
Povězte nám o použití dataclass ve vašem projektu a proč jste si je vybrali
Jak si vyberete mezi několika nabídkami? Co je pro vás důležité?
Povězte nám o principech SOLID
pokud total_size > self.max_batch_size: raise ValueError("dávka je příliš velká")