Python ldexp() — это встроенная функция, которая используется для вычисления значения x*(2**i) в числах с плавающей запятой, и она обратна функции frexp(). Чтобы использовать эту функцию, нам сначала нужно импортировать математическую библиотеку.
Функция ldexp() — это одна из функций стандартной math библиотеки Python, которая возвращает x *(2**i).
Синтаксис
Функция ldexp() принимает два аргумента:
- x -> любое допустимое число может быть положительным или отрицательным.
- i -> любое допустимое число может быть положительным или отрицательным.
Возвращаемое значение
Функция ldexp() возвращает единственное значение x*(2**i) с плавающей запятой.
Если значение x или i не является числом, эта функция возвращает TypeError.
Примеры программирования
См. следующий код.
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
# app.py # Importing math library import math # First Type example: Take input from user x = int(input("Enter value of x: ")) i = int(input("Enter value of i: ")) # Printing the value print("Output of first type example", math.ldexp(x, i)) # Second Type Example : Using list and tuple value # Declaring a list l1 = [42, 12, 34, 6] # Decalring a tuple t1 =(24, 14, 34, 5) # Printing values print("Output of second type example", math.ldexp(l1[3], 3)) # i=3 x=6 print("Output of third type example", math.ldexp(t1[1], 4)) # i=4 x=14 # Third type example : When x is not a number x = 'X' i = 10 print(math.ldexp(x, i)) |
Вывод:
|
1 2 3 4 5 6 7 8 9 |
Enter value of x: 10 Enter value of i: 3 Output of first type example 80.0 Output of second type example 48.0 Output of third type example 224.0 Traceback(most recent call last): File "ldexp.py", line 25, in <module> print(math.ldexp(x,i)) TypeError: must be real number, not str |
В этом примере у нас есть три типа входных данных. В первом типе примера мы получили ввод от пользователя, а затем напечатали значение ldexp(x, i), где x=10 и i=3.
Во втором случае мы взяли список и кортеж, а затем — значение x из списка и кортежа соответственно и, учитывая значение i, напечатали значение ldexp(). Наконец, мы приняли значение x как символ, который не является числом, поэтому функция вернула TypeError.
Давайте посмотрим на другой пример: мы берем список и кортеж Python.
|
1 2 3 4 5 6 7 |
# app.py import math # string value taken print(math.ldexp('6', 36)) print(math.ldexp(36, '6')) |
Вывод:
|
1 2 3 4 5 |
python3 app.py Traceback(most recent call last): File "app.py", line 4, in <module> print(math.ldexp('6', 36)) TypeError: must be real number, not str |
Заключение
Метод Python ldexp() возвращает произведение числа с плавающей запятой, а 2 возводится в степень степени, т. е. x * 2e.
