การดำเนินการทางตัวเลขใน Python
บทความนี้อธิบายการดำเนินการทางตัวเลขใน Python
คุณสามารถเรียนรู้เกี่ยวกับประเภทตัวเลข ภาพรวมของฟังก์ชันและโมดูลในตัว และภาพรวมของฟังก์ชันทางคณิตศาสตร์ในโมดูล math
YouTube Video
การดำเนินการทางตัวเลขใน Python
Python มาพร้อมกับความสามารถที่ทรงพลังอย่างมากสำหรับการดำเนินการทางตัวเลข ด้านล่างนี้เป็นคำอธิบายเกี่ยวกับการดำเนินการทางตัวเลขพื้นฐานใน Python
ประเภทตัวเลข
Python มีประเภทตัวเลขหลักๆ ดังต่อไปนี้
1# Integer (int)
2x = 10
3y = -5
4print("x =", x, "type:", type(x)) # <class 'int'>
5print("y =", y, "type:", type(y)) # <class 'int'>
6print("x + y =", x + y) # 5
7
8# Float
9a = 3.14
10b = -0.001
11print("\na =", a, "type:", type(a)) # <class 'float'>
12print("b =", b, "type:", type(b)) # <class 'float'>
13print("a * 2 =", a * 2) # 6.28
14
15# Complex
16c = 2 + 3j
17d = 1 - 1j
18print("\nc =", c, "type:", type(c)) # <class 'complex'>
19print("d =", d, "type:", type(d)) # <class 'complex'>
20print("c + d =", c + d) # (3+2j)
21print("c * d =", c * d) # (5+1j)
- ประเภท int (จำนวนเต็ม) ใช้แทนจำนวนเต็ม เช่น
10
หรือ-5
- ประเภท float (จำนวนทศนิยม) ใช้แทนตัวเลขที่มีจุดทศนิยม เช่น
3.14
หรือ-0.001
- ประเภท complex (จำนวนเชิงซ้อน) ใช้แทนจำนวนเชิงซ้อน เช่น
2 + 3j
ที่นี่j
คือหน่วยจินตภาพ
ฟังก์ชันและโมดูลในตัว
Python ยังมีฟังก์ชันและโมดูลในตัวที่มีประโยชน์สำหรับการดำเนินการทางตัวเลข
- ฟังก์ชัน
abs(x)
จะคืนค่าค่าสัมบูรณ์
1result = abs(-10) # result is 10
2print(result)
โค้ดนี้เป็นตัวอย่างของการใช้ฟังก์ชัน abs()
เพื่อหาค่าสัมบูรณ์ของตัวเลข
- ฟังก์ชัน
round(x, n)
จะปัดเศษตัวเลขเป็นทศนิยม n ตำแหน่ง
1result = round(3.14159, 2) # result is 3.14
2print(result)
โค้ดนี้เป็นตัวอย่างของการใช้ฟังก์ชัน round()
เพื่อปัดตัวเลขให้ได้จำนวนทศนิยมตามที่กำหนด
- โมดูล
math
มีฟังก์ชันทางคณิตศาสตร์ขั้นสูงมากขึ้น
1import math
2
3# result is 4.0 (square root)
4result = math.sqrt(16)
5print(result)
6
7# result is 1.0 (sine function)
8result = math.sin(math.pi / 2)
9print(result)
โค้ดนี้เป็นตัวอย่างของการใช้โมดูล math
เพื่อคำนวณทางคณิตศาสตร์ขั้นสูง เช่น การหารากที่สองและฟังก์ชันตรีโกณมิติ
- โมดูล
decimal
รองรับการคำนวณทศนิยมที่มีความแม่นยำสูง
1from decimal import Decimal
2
3# result is Decimal('0.3')
4result = Decimal('0.1') + Decimal('0.2')
5print(result)
6
7# The result is 0.30000000000000004 due to floating-point inaccuracies
8print(0.1 + 0.2)
โค้ดนี้เป็นตัวอย่างของการหลีกเลี่ยงข้อผิดพลาดจากทศนิยมลอยตัวและการคำนวณทศนิยมความแม่นยำสูงโดยใช้โมดูล decimal
- โมดูล
fractions
ใช้จัดการกับจำนวนตรรกยะ (เศษส่วน)
1from fractions import Fraction
2result = Fraction(1, 3) + Fraction(1, 6) # result is Fraction(1, 2)
3print(result)
ด้วยคุณลักษณะเหล่านี้ Python ทำให้การดำเนินการคำนวณทางตัวเลขต่าง ๆ เป็นเรื่องง่าย เนื่องจากข้อจำกัดด้านความแม่นยำของการคำนวณแบบจุดทศนิยม จึงแนะนำให้ใช้โมดูล decimal
สำหรับการคำนวณที่ต้องการความแม่นยำสูง
ฟังก์ชันทางคณิตศาสตร์ใน Python
ใน Python มีโมดูลที่สะดวกสบายชื่อว่า math
สำหรับการใช้ฟังก์ชันทางคณิตศาสตร์ โมดูลนี้ให้ฟังก์ชันมากมายที่จำเป็นสำหรับการคำนวณทางคณิตศาสตร์ ลองดูฟังก์ชันตัวแทนบางตัวในโมดูล math
กัน
ฟังก์ชันทางคณิตศาสตร์พื้นฐาน
math.sqrt(x)
: ส่งกลับค่ารากที่สองของx
x
ต้องเป็นตัวเลขที่ไม่ติดลบmath.pow(x, y)
: ส่งกลับค่าx
ยกกำลังy
math.exp(x)
: ส่งกลับค่าของเลขยกกำลังx
((e^x))math.log(x[, base])
: คำนวณค่าลอการิทึมธรรมชาติหรือลอการิทึมในฐานที่กำหนด หากละเว้นbase
จะคำนวณค่าลอการิทึมธรรมชาติ
ฟังก์ชันตรีโกณมิติ
math.sin(x)
: ส่งกลับค่า sine ของx
(เป็นเรเดียน)math.cos(x)
: ส่งกลับค่า cosine ของx
(เป็นเรเดียน)math.tan(x)
: ส่งกลับค่า tangent ของx
(เป็นเรเดียน)
ฟังก์ชันตรีโกณมิติผกผัน
math.asin(x)
: ส่งกลับค่า arcsine (sine ผกผัน) ของx
math.acos(x)
: ส่งกลับค่า arccosine (cosine ผกผัน) ของx
math.atan(x)
: ส่งกลับค่า arctangent (tangent ผกผัน) ของx
ฟังก์ชันไฮเพอร์โบลิก
math.sinh(x)
: ส่งกลับค่า hyperbolic sine ของx
math.cosh(x)
: ส่งกลับค่า hyperbolic cosine ของx
math.tanh(x)
: ส่งกลับค่า hyperbolic tangent ของx
ค่าคงที่
math.pi
: ค่าคงที่ที่แทนอัตราส่วนของเส้นรอบวงของวงกลมต่อเส้นผ่านศูนย์กลาง ((\pi))math.e
: ค่าคงที่ที่แทนฐานของลอการิทึมธรรมชาติ ((e))
ตัวอย่างการคำนวณ
นี่คือตัวอย่างบางส่วน
1import math
2
3# Square root calculation
4print(math.sqrt(16)) # Output: 4.0
5
6# Power calculation
7print(math.pow(2, 3)) # Output: 8.0
8
9# Natural logarithm calculation
10print(math.log(math.e)) # Output: 1.0
11
12# Trigonometric functions
13degree = 45
14radian = math.radians(degree) # Convert to radians
15print(math.sin(radian)) # Output: 0.7071067811865475 (approximately 1/√2)
16
17# Constants
18print(math.pi) # Output: 3.141592653589793
19print(math.e) # Output: 2.718281828459045
- โค้ดนี้ใช้โมดูล
math
ในการคำนวณเช่น รากที่สอง การยกกำลัง ลอการิทึมธรรมชาติ และฟังก์ชันตรีโกณมิติ รวมถึงแสดงค่าคงที่ เช่น ค่า pi และเลขออยเลอร์
สรุป
ในตัวอย่างนี้ เราใช้โมดูล math
แต่ Python ยังมีการสนับสนุนอย่างกว้างขวางสำหรับการคำนวณทางคณิตศาสตร์ขั้นสูงและการสร้างตัวเลขสุ่ม โดยการใช้ไลบรารีเช่น NumPy หรือ SciPy คุณสามารถใช้ฟังก์ชันทางคณิตศาสตร์ที่ทรงพลังและหลากหลายมากยิ่งขึ้น
คุณสามารถติดตามบทความข้างต้นโดยใช้ Visual Studio Code บนช่อง YouTube ของเรา กรุณาตรวจสอบช่อง YouTube ด้วย