Функция сдвига влево в NumPy

NumPyNumPyBeginner
Практиковаться сейчас

💡 Этот учебник переведен с английского с помощью ИИ. Чтобы просмотреть оригинал, вы можете перейти на английский оригинал

Введение

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

Советы по работе с ВМ

После запуска ВМ нажмите в верхнем левом углу, чтобы переключиться на вкладку Notebook и получить доступ к Jupyter Notebook для практики.

Иногда вам может потребоваться подождать несколько секунд, пока Jupyter Notebook загрузится. Валидация операций не может быть автоматизирована из-за ограничений Jupyter Notebook.

Если вы сталкиваетесь с проблемами во время обучения, не стесняйтесь обращаться к Labby. Оставьте отзыв после занятия, и мы оперативно решим проблему для вас.

Импортировать библиотеку NumPy

Сначала мы должны импортировать библиотеку NumPy, чтобы использовать функцию left_shift().

import numpy as np

Использование left_shift() для одного значения

Функция left_shift() используется для сдвига битов влево у одного целого значения на указанное количество бит. Вот пример:

input_num = 40
bit_shift = 2

output = np.left_shift(input_num, bit_shift)

print(f"После сдвига на {bit_shift} бит влево значение равно: {output}")

Результат:

После сдвига на 2 бит влево значение равно: 160

Использование left_shift() для массива значений

Функция left_shift() также может быть использована для массива целых значений. В этом случае функция выполнит операцию сдвига влево для каждого элемента в массиве. Вот пример:

input_arr = np.array([2, 8, 10])
bit_shift = np.array([3, 4, 5])

output = np.left_shift(input_arr, bit_shift)

print(f"После сдвига битов влево массив выглядит так:\n{output}")

Результат:

После сдвига битов влево массив выглядит так:
[ 16 128 320]

Функция left_shift() выполнила операцию сдвига влево для каждого элемента обоих массивов.

Указать выходной массив

Вы можете указать выходной массив для хранения результатов операции сдвига влево. Если вы предоставите выходной массив, функция обновит этот массив вместо выделения нового. Выходной массив должен быть широковещательным до той же формы, что и входной массив. Вот пример:

input_arr = np.array([2, 8, 10])
bit_shift = np.array([3, 4, 5])

output = np.zeros_like(input_arr, dtype=np.int64)

np.left_shift(input_arr, bit_shift, out=output)

print(f"После сдвига битов влево выходной массив выглядит так:\n{output}")

Результат:

После сдвига битов влево выходной массив выглядит так:
[ 16 128 320]

Указать условие для выходных данных

Вы также можете указать условие для параметра where, чтобы установить значения выходного массива. Параметр where - это булевый массив, который широковещательный до входных массивов. Вот пример:

input_arr = np.array([2, 8, 10])
bit_shift = np.array([3, 4, 5])

output = np.zeros_like(input_arr, dtype=np.int64)
condition = np.array([True, False, True])

np.left_shift(input_arr, bit_shift, out=output, where=condition)

print(f"После сдвига битов влево выходной массив выглядит так:\n{output}")

Результат:

После сдвига битов влево выходной массив выглядит так:
[ 16   8 320]

Параметр where установил первый и третий элементы выходного массива в соответствии с условием, которое мы указали.

Резюме

В этом руководстве представлено обзор функции left_shift() библиотеки NumPy. Мы объяснили базовый синтаксис и параметры, а затем продемонстрировали значения, возвращаемые этой функцией. Также мы предоставили примеры кода для использования функции с одним значением и массивом значений, а также说明了如何指定输出数组和输出条件。