Podstawy Pythona dla GenAI

Znasz JavaScript i TypeScript. Teraz chcesz budować rozwiązania z wykorzystaniem LangChain i narzędzi GenAI. Potrzebujesz Pythona.

Nie musisz zaczynać od zera. Możesz przełożyć koncepcje Pythona na to, co już znasz.

Oto szybki przewodnik tłumaczeniowy dla programistów JS:

Podstawowa składnia

  • Zmienne: Używaj zwykłego przypisania. Dla stałych używaj wielkich liter (UPPER_CASE).
  • Typy Boolean: Używaj True i False (zaczynają się wielką literą).
  • Null/Undefined: Używaj None.
  • Wypisywanie: Używaj print() zamiast console.log().
  • Template Literals: Używaj f-stringów, np. f"Hello, {name}".

Logika i przepływ sterowania

  • Wcięcia: Python używa białych znaków zamiast klamer {}. To najważniejsza zmiana.
  • Truthy/Falsy: W JS pusta tablica [] jest truthy. W Pythonie pusta lista [] jest falsy.
  • Porównywanie: Operator == w Pythonie porównuje wartości, podobnie jak === w JS.

Struktury danych

  • Listy: Podobne do tablic (Arrays). Używaj .append() zamiast .push().
  • Słowniki: Podobne do obiektów (Objects). Aby uzyskać dostęp do wartości, użyj person["name"].
  • Krotki (Tuples): Jak niezmienne (frozen) tablice. Nie można ich zmienić po utworzeniu.
  • Zbiory (Sets): Używaj ich do przechowywania unikalnych elementów i operacji matematycznych, takich jak części wspólne.

Wzorce funkcyjne

  • Map i Filter: Używaj list comprehensions zamiast .map() i .filter().
  • Przykład: [n * 2 for n in numbers] zastępuje numbers.map(n => n * 2).
  • Destrukturyzacja: Używaj rozpakowywania (unpacking), aby przypisać wiele zmiennych jednocześnie.

Podstawy nowoczesnego GenAI

  • Pydantic: To kluczowa kwestia. LangChain używa Pydantic do walidacji danych i ustrukturyzowanych wyjść.
  • Dekoratory: Działają jak Higher-Order Components w React. Owijają funkcje, aby dodać do nich logikę.
  • Async: Python używa async i await dokładnie tak samo jak JS. Używaj asyncio.gather() zamiast Promise.all().
  • Generatory: Pozwalają na strumieniowanie tokenów LLM jeden po drugim.

Zarządzanie pakietami

  • npm to pip.
  • node_modules to .venv.
  • package.json to requirements.txt.

Zawsze używaj środowiska wirtualnego (.venv), aby utrzymać porządek w projektach.

Źródło: https://dev.to/ajmal_hasan/python-essentials-for-genai-lji