Mojo Academy · Урок

Передача данных через мост

Преобразуйте значения между Mojo и Python.

Урок 3 из 413 шагов

«Передача данных через мост» — бесплатный урок Mojo Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Mojo Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Mojo Academy содержит 4 уроков всего.

Два мира значений

У Mojo есть собственные типы, и у Python — свои. Взаимодействие означает преобразование значений при переходе между этими двумя мирами.

Из Mojo в Python

Когда вы передаёте значение Mojo в вызов Python, Mojo автоматически оборачивает его в PythonObject, понятный Python.

var n: Int = 42
print(np.sqrt(n))

Числа преобразуются без проблем

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

var x: Float64 = 3.5
var r = math.floor(x)

Строки тоже переходят

При передаче строка Mojo String становится строкой Python, поэтому функции для работы с текстом просто работают через мост.

var name = String("Mojo")
print(name)

Из Python в Mojo

При обратном переходе результаты Python поступают как PythonObject. Затем при необходимости преобразуйте их в собственный тип Mojo.

var obj = math.factorial(5)

Извлечение целого числа

Чтобы получить из результата настоящее число Mojo, создайте значение нужного типа из объекта — например, обернув его в Int.

var count = Int(math.factorial(5))

Извлечение числа с плавающей точкой

Та же идея работает с дробными числами: создайте Float64 из результата Python, чтобы использовать его в математике Mojo.

var ratio = Float64(math.pi)

Извлечение строки

Таким же способом превратите текстовый результат Python в строку Mojo String, чтобы хранить и обрабатывать его непосредственно в Mojo.

var label = String(obj)

Индексация коллекций Python

Вы можете индексировать результат в виде списка или массива Python с помощью квадратных скобок, получая другой PythonObject для преобразования.

var first = arr[0]

Преобразуйте значения на границах

Полезная привычка: оставляйте значения в виде PythonObjects во время работы с Python, а затем преобразуйте их в типы Mojo на контролируемой вами границе.

Почему это важно

Понимание того, как данные проходят через мост, делает ваши типы предсказуемыми, поэтому результаты Python безопасно поступают в быстрый код Mojo. 🌉

Быстрая проверка

Вспомните, как превратить результат Python в число Mojo.

Итоги

Вы увидели, как значения Mojo при передаче превращаются в PythonObjects, и научились преобразовывать результаты обратно в целое число, число с плавающей точкой или строку. 🎯

Можно начать бесплатно

Изучай Mojo с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
30
Уроки
120

Часто задаваемые вопросы

Урок «Передача данных через мост» бесплатный?

Да — полный текст урока «Передача данных через мост» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Mojo Academy, подпишись на CoddyKit PRO. Курс Mojo Academy содержит 4 уроков всего.

Чему я научусь в уроке «Передача данных через мост»?

Преобразуйте значения между Mojo и Python. Ты практикуешь Mojo Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Mojo Academy?

Предыдущий опыт не требуется. Mojo Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Передача данных через мост»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Mojo Academy?

Да. Каждый урок Mojo Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Импорт модуля Python
  2. Вызов функций Python
  3. Передача данных через мост
  4. Когда использовать взаимодействие с Python
← Назад к Mojo Academy