Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Trả về cơ số với các số mũ khác nhau trong Python

Để trả về cơ số khi các phần tử của mảng đầu tiên được lũy thừa bởi mảng thứ hai, sử dụng phương thức float_power() trong Python NumPy. Phương thức này trả về cơ số trong x1 lũy thừa các số mũ trong x2. Đây là một scalar nếu cả x1 và x2 đều là scalar.

Tham số x1 là các cơ số. Tham số x2 là các số mũ. Lũy thừa từng cơ số trong x1 với số mũ tương ứng vị trí trong x2. x1 và x2 phải có thể broadcast đến cùng hình dạng.

Khác với hàm power, các kiểu integer, float16, và float32 được thăng cấp thành float với độ chính xác tối thiểu float64 nên kết quả luôn không chính xác (inexact). Mục đích là hàm sẽ trả về kết quả có thể sử dụng cho lũy thừa âm và hiếm khi tràn số cho lũy thừa dương. Giá trị âm lũy thừa bằng giá trị không nguyên sẽ trả về nan. Để có kết quả phức, hãy ép kiểu đầu vào thành complex hoặc chỉ định dtype là complex.

Các bước thực hiện

Trước tiên, nhập thư viện cần thiết:

import numpy as np

Các cơ số:

x1 = range(6)

Hiển thị các cơ số:

print("Các cơ số...\n", x1)

Các số mũ:

x2 = [1.0, 2.0, 3.0, 3.0, 2.0, 1.0]

Hiển thị các số mũ:

print("\nCác số mũ...\n", x2)

Để trả về cơ số khi các phần tử mảng đầu tiên được lũy thừa bởi mảng thứ hai, sử dụng float_power():

print("\nKết quả...\n", np.float_power(x1, x2))

Ví dụ hoàn chỉnh

import numpy as np

# Các cơ số
x1 = range(6)

# Hiển thị các cơ số
print("Các cơ số...\n", x1)

# Các số mũ
x2 = [1.0, 2.0, 3.0, 3.0, 2.0, 1.0]

# Hiển thị các số mũ
print("\nCác số mũ...\n", x2)

# Tính lũy thừa với float_power()
print("\nKết quả...\n", np.float_power(x1, x2))

Kết quả đầu ra

Các cơ số...
 range(0, 6)
Các số mũ...
 [1.0, 2.0, 3.0, 3.0, 2.0, 1.0]
Kết quả...
 [ 0.  1.  8. 27. 16.  5.]

Giải thích: Tính từng cặp tương ứng:

  • 01.0 = 0
  • 12.0 = 1
  • 23.0 = 8
  • 33.0 = 27
  • 42.0 = 16
  • 51.0 = 5