1
Beispiel (Frage folgt.):?Was ist der Typ des asynchronen Iterators?
import asyncio
import typing as t
from aiokafka import AIOKafkaConsumer
class KafkaSimpleClient:
...
async def receive(self, topic: str) -> ???:
bootstrap_servers = ','.join(
'{}:{}'.format(host, port)
for host, port in self._bootstrap_servers
)
consumer = AIOKafkaConsumer(
loop=asyncio.get_event_loop(),
bootstrap_servers=bootstrap_servers,
metadata_max_age_ms=5000,
)
consumer.subscribe(pattern=topic)
await consumer.start()
return consumer
Jetzt bin ich mit dem Rückgabetyp receive
kämpfen (es gibt etwas, das mit async for x in y
iteriert werden kann, was es ist, ist es ein awaitable Iterator es ein Iterator über awaitables? Vielleicht etwas ganz anderes?
??? = t.Awaitable[t.Iterator]
??? = t.Iterator[t.Awaitable]
??? = (Something else)
Was ist es wichtig, was es ist? Python ist eine dynamische Sprache, daher sollte es keine Rolle spielen. Sie scheinen zu wissen, dass Sie Async für x in y verwenden können: so scheint das ein Ende zu sein. – quamrana
@quamrana Sie scheinen in der Lage zu sein, die Frage zu lesen, aber Sie kennen die Antwort nicht. Was ist der Sinn Ihres Kommentars? – wvxvw
Nun, ich möchte immer noch wissen, warum es dir wichtig ist, was der Typ ist. Wenn Sie wissen würden, was der Typ ist, was würden Sie mit den Informationen machen? – quamrana