Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

คืนฐานให้กับเลขชี้กำลังที่แตกต่างกันใน Python


ในการคืนค่าฐานเมื่อองค์ประกอบอาร์เรย์แรกถูกยกขึ้นเป็นกำลังจากอาร์เรย์ที่สอง ให้ใช้วิธี thefloat_power() ใน Python Numpy เมธอดจะคืนค่าฐานใน x1 ที่ยกขึ้นเป็นเลขชี้กำลัง x2 นี่คือสเกลาร์ถ้าทั้ง x1 และ x2 เป็นสเกลาร์ พารามิเตอร์ x1 เป็นฐาน พารามิเตอร์ x2 เป็นเลขชี้กำลัง

ยกแต่ละฐานใน x1 ให้เป็นกำลังตามตำแหน่งใน x2 x1 และ x2 จะต้องออกอากาศได้ในรูปแบบเดียวกัน สิ่งนี้แตกต่างจากฟังก์ชันพลังงานในจำนวนเต็ม float16 และfloat32 ที่ได้รับการเลื่อนระดับให้ลอยด้วยความแม่นยำขั้นต่ำของ float64 เพื่อให้ผลลัพธ์ไม่แน่นอนเสมอ จุดประสงค์คือฟังก์ชันจะส่งกลับผลลัพธ์ที่ใช้งานได้สำหรับพลังลบและแทบจะไม่ไหลสำหรับพลังบวก ค่าลบที่เพิ่มเป็นค่าที่ไม่ใช่ค่าปริพันธ์จะคืนค่าเป็น nan เพื่อให้ได้ผลลัพธ์ที่ซับซ้อน ให้แปลงอินพุตเป็นแบบซับซ้อน หรือระบุ dtype ให้ซับซ้อน

ขั้นตอน

ขั้นแรก นำเข้าไลบรารีที่จำเป็น -

import numpy as np

ฐาน −

x1 = range(6)

แสดงฐาน -

print("The bases...\n",x1)

เลขชี้กำลัง -

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

แสดงเลขชี้กำลัง -

print("\nThe exponents...\n",x2)

ในการคืนค่าฐานเมื่อองค์ประกอบอาร์เรย์แรกถูกยกขึ้นเป็นกำลังจากอาร์เรย์ที่สอง ให้ใช้วิธี thefloat_power() -

print("\nResult...\n",np.float_power(x1, x2))

ตัวอย่าง

import numpy as np

# The bases
x1 = range(6)

# Display the bases
print("The bases...\n",x1)

# The exponents
x2 = [1.0, 2.0, 3.0, 3.0, 2.0, 1.0]

# Display the exponents
print("\nThe exponents...\n",x2)

# To return the bases when first array elements are raised to powers from second array, use the float_power() method in Python Numpy
# The method returns the bases in x1 raised to the exponents in x2. This is a scalar if both x1 and x2 are scalars.
print("\nResult...\n",np.float_power(x1, x2))

ผลลัพธ์

The bases...
range(0, 6)

The exponents...
[1.0, 2.0, 3.0, 3.0, 2.0, 1.0]

Result...
[ 0. 1. 8. 27. 16. 5.]