การใช้ Interpreter ของ python ในการคำนวณด้้านตัวเลข

ทดลองใช้คำสั่งพื้นฐานใน interpreter of python ในการคำนวณกันดีกว่าไม่ใช่เรื่องยากครับ เปิด Python shell ขึ้นมา เลือกที่ Start> All Programs> Python 2.5> IDLE (Python GUI)

Interpreter ตัวนี้ลองรับการคำนวณพื้นฐานทางคณิตศาสตร์ลักษณะคล้ายๆภาษาที่เราเรียนมา เช่น Java, C, C++ ประมาณนี้ ลองใช้คำสั่งง่ายๆด้วยโอเปอร์เรเตอร์ +, -, * และ / เพื่อทำการคำนวณดู ตัวอย่างเช่น

>>> 2+2
4
>>> 5*5+2
27
>>> 5+2*10
25
>>> (50-5*6)/4
5
>>> #นี่คือคอมเมนต์ใน Python
>>> 2+5*10
52
>>>

ลักษณะก็เหมือนการใส่ expression ธรรมดานี่แหละครับ การใส่คอมเมนต์ก็ง่ายๆ เพียงใส่เครื่องหมาย # บรรทัดนั้นก็จะกลายเ็ป็นคอมเมนต์

การใส่เครื่องหมาย “=” จะเป็นการกำหนดค่าให้กับตัวแปร ตัวอย่างเช่น

>>> width = 20 #กำหนดให้ความกว้างเท่ากับ 20
>>> height = 30 #กำหนดให้ความสูงเท่ากับ 30
>>> area = width*height
>>> print area
600
>>>

เราสามารถกำหนดค่าให้กับตัวแปรพร้อมๆกันได้ เ่่ช่น

>>> x=y=z=10 #Let x,y,z equal to 10
>>> x
10
>>> y
10
>>> z
10
>>>

ไม่ใช่แค่เลขจำนวนเต็มที่ทำได้ แต่จำนวน floating point ก็ทำได้เหมือนกัน

>>> 3 * 3.75 / 1.5
7.5
>>> 7.0 / 2
3.5
>>>

การทำงานรองรับจำนวนเชิงซ้อน Complex number ที่เขียนอยู่มนรูป i+j ก็สามารถทำได้ เช่น

>>> 1j * 1J
(-1+0j)
>>> 1j * complex(0,1) #เขียนรูปแบบนี้ก็ได้
(-1+0j)
>>> 3+1j*3
(3+3j)
>>> (1+2j)/(1+1j)
(1.5+0.5j)
>>>

จำนวนเชิงซ้อนถูกเขียนแสดงในรูปทศนิยมสองตำแหน่งเสมอ เราสามารถเรียกดูส่วนจริงและส่วนจินตภาพได้ เช่น

>>> a=2+3j #กำหนดให้ a เป็นจำนวนเชิงซ้อนทเ่ากับ 2+3j
>>> a.real #แสดงส่วนจริง
2.0
>>> a.imag #แสดงส่วนจินภาพ
3.0
>>>

การแปลงค่าจากจำนวนเชิงซ้อนมาเป็น folat, int, long นั้นทำไม่ได้โดยตรง แต่จะใช่ฟังก์ชัน abs(z) ตัวอย่างเช่น

จากตัวอย่างค่า a=2+3j จากด้านบน เมื่อเราต้องการทำให้เป็น int จะได้ผลดังนี้

>>> int(a) #โปรแกรมจะฟ้อง error โดยบอกว่าไม่สามารถ convert จำนวนเชิงซ้อนมาเป็น integer ได้
Traceback (most recent call last):
File “<pyshell#28>”, line 1, in <module>
int(a)
TypeError: can’t convert complex to int; use int(abs(z))

>>> abs(a) #sqrt(a.real**2 + a.imag**2)
3.6055512754639896
>>>

คุณสมบัติสุดท้ายที่แนะนำคำ การทำงานร่วมระหว่างกัน ตัวอย่างก็คือ ถ้าเราจำนวนสองจำนวนบวกกัน ผลลัพธ์จะถูกเก็บในตัวแปร “_” จากนั้นเราสามารถใช้ประโชยน์จากจากนำค่าใน “_” ไปใช้ต่อได้ เช่น

>>> a = 10
>>> b = 20
>>> c = a+b
>>> c
30
>>> d = a+_ #ค่า d เท่ากับการน้ำค่า a=10 มาบวกกับ _  จะได้ผลลัพธ์ดังบรรทัดต่อไป
>>> d
40
>>> print _ # เพื่อเรียกดูค่าใน _
40
>>>

แหล่งที่มา http://docs.python.org/tut/node5.html