เขียน python | เริ่มต้นด้วย Hello, World

เขียน python ครั้งแรกใน 2 นาที! เฮ้ย มันง่ายขนาดนั้นเชียวรึ? อันนี้ข้าพเจ้าอุทานในใจตอนที่ไปเรียน python เมื่อวันก่อน

ครับ ใน 2 นาทีที่อาจารย์ท่านบอก คือการพิมพ์คำว่า Hello, World

อันนี้ก็สงสัยมาตลอดว่าทำไมต้อง Hello, World ด้วยนะ แล้วก็ค้นพบว่า มันใช้มาตั้งแต่ทศวรรษ 70 นู่น คือตั้งแต่สมัยเริ่มเขียนโค้ดทำโปรแกรมกันใหม่ ๆ เลยทีเดียว ลองอ่านตรงนี้ครับ สรุปให้สั้น ๆ คือ ใช้เพื่อแสดงให้เห็นว่ากระบวนการทำงานของโค้ดที่เราเขียนทำงานอย่างไร รวมทั้งเป็นการตรวจสอบภาษาหรือระบบทำงานว่าปกติใช้งานได้ถูกต้อง มือใหม่เรียนรู้ได้รวดเร็ว เพราะต่อให้ไม่มีประสบการณ์ด้านการเขียนโค้ดมาก่อนก็สามารถเขียน Hello World ได้ทั้งอย่างง่ายดายและถูกต้อง

โอเค นั่นคือทำไมต้องเริ่มต้นด้วย Hello, World

แต่นี่ Data Revol นะจ๊ะ เรามาเริ่มต้นด้วยประโยคคลาสสิกจาก Star Wars กันดีกว่า

เขียน python เริ่มต้นด้วย I am your father

เริ่มต้น ก็ต้องหา IDE ที่ชอบที่ชอบ... จะเป็น spyder Jupyter Notebook PyCharm หรืออะไรก็ได้ ที่ถนัด แต่ถ้าจะให้แนะนำ ลองพิจารณา Jupyter Notebook เพราะมีข้อดีคือ เราสามารถดูผลลัพธ์ทีละคำสั่งหรือทีละสเต็ปแบบง่าย ๆ แต่ในตัวอย่างนี้จะใช้ Colaboratory ของ google ซึ่งทำงานใน cloud ของ google ไม่ต้อง set up อะไรเลย และเห็นผลลัพธ์ในแต่ละคำสั่งเหมือน Jupyter Notebook (ท่านสามารถเข้าถึงได้ที่ https://colab.research.google.com/)

การจะให้แสดงผลว่า I am your father นั้น จะใช้ฟังก์ชัน print() ไวยากรณ์คำสั่งนี้ เต็มรูปแบบก็คือ

print (value, …, sep = ‘ ‘, end = ‘\n’)

TIP: print ไม่ใช่ Print ถ้าท่านสะกด Print ใช้ตัว P เป็นตัวพิมพ์ใหญ่จะเกิด error ผู้เริ่มต้นบางคน ติดนิสัยเขียนอักษรเริ่มต้นด้วยตัวพิมพ์ใหญ่

ความหมายของไวยากรณ์คำสั่งนี้คือ ค่าตั้งต้นของ sep (ตัวแบ่งระหว่าง value) คือ ‘ ‘ หรือ whitespace (ภาษาไทยน่าจะเป็น วรรค) และ end หรือ สิ้นสุดฟังก์ชันด้วย ‘\n’ หรือ ขึ้นบรรทัดใหม่ ซึ่งถ้าเราพอใจกับค่าตั้งต้นนี้ เราก็ไม่จำเป็นต้องใส่ไวยากรณ์นี้เข้าไป สมมติว่า เราจะเขียนง่าย ๆ อยากให้ได้คำว่า I am your father เท่านั้น เราพิมพ์แค่

print ("I am your father")

กด เครื่องหมายสามเหลี่ยมที่เป็นสัญลักษณ์ run ก็จะได้ผลลัพธ์เป็น

I am your father

ถ้าไม่ได้แบบนี้น่าจะมีปัญหาอะไรสักอย่างแล้วล่ะ ทีนี้ มาดูไวยากรณ์การใช้ฟังก์ชันนี้หน่อย

value, …, หมายถึง ถ้าเราจะเอา value อื่นมาผสม จะต้องใช้เครื่องหมายจุลภาคเป็นตัวแบ่ง เช่น เราพิมพ์ว่า 

print ("I am your father", "Star Wars", 1980)

จะได้ผลลัพธ์เป็น

I am your father Star Wars 1980

แต่ถ้าเราอยากจะแยกแต่ละค่าให้ชัดเจน ไม่อยากใช้ whitespace เป็นตัวคั่น อยากใช้ – (ขีดกลาง) เป็นตัวคั่นเพื่อแยกค่าให้เห็นชัดเจน เราก็พิมพ์ว่า

print ("I am your father", "Star Wars", 1980, sep ='-')

จะได้เป็น

I am your father-Star Wars-1980
เขียน python

ทีนี้ ในกรณีที่เราเขียนคำสั่ง print แยกกัน เช่น

print ("I am your father")
print  ("Star Wars")
print  (1980)

ค่าเริ่มต้นของ end คือ เริ่มบรรทัดใหม่ เราจะได้ผลลัพธ์ดังนี้

I am your father
Star Wars
1980

คือจะอยู่คนละบรรทัด เพราะค่าตั้งต้นของ end คือ ‘\n’ ซึ่งหมายถึง ขึ้นบรรทัดใหม่ แต่ถ้าเราอยากให้อยู่บรรทัดต่อกัน โดยมี / เป็นตัวคั่นระหว่าง 2 คำสั่ง เราจะเปลี่ยนเป็นอย่างนี้

print ("I am your father", end=' \ ')
print ("Star Wars", end=' \ ')
print (1980)

จะได้ผลลัพธ์เป็น

I am your father \ Star Wars
1980
เขียน python

Input

เมื่อลองเริ่มเเขียน python โดนใชัฟังก์ชั่น print เพื่อให้แสดงผลกันแล้ว เรามาลองเล่นกันต่อด้วยการให้แสดงค่าโต้ตอบกับสิ่งที่เราพิมพ์เข้าไป อย่างเช่น เราอยากให้มีการโต้ตอบโดยพิมพ์ชื่อลงไป ตามด้วยประโยค I am your father!

การรับค่าเพื่อเอามาแสดงนี้ จะให้พิมพ์โดยใช้คีย์บอร์ด ซึ่งทาง Python จะใช้ฟังก์ชัน input() เพื่อรับค่าจากคีย์บอร์ด (เก็บเป็นข้อความ) เช่น

name = input("พิมพ์ชื่อคุณที่นี่: ")
print(name + "... I am your father!" )

เมื่อกด run จะขึ้นหน้าต่างมาให้ใส่ โดยเราจะพิมพ์ชื่อเข้าไป จบการรับค่าด้วยการขึ้นบรรทัดใหม่ และแสดงผลตามคำสั่งบรรทัดต่อไป

Tip: การใช้ input จะรับข้อมูลเป็น “ข้อความ” หรือ string เท่านั้น แม้จะพิมพ์ตัวเลขเข้าไป ก็ไม่สามารถนำตัวเลขไปคำนวณได้ แต่ก็มีวิธีในการดัดแปลงโดยการ แปลงค่าให้เป็นตัวเลข ได้เหมือนกัน เช่นใส่ฟังก์ชัน int() หรือ float() เช่น เราจะให้รับตัวเลข 2 ตัว มาคำนวณโดยการคูณ

a = int(input("ใส่ตัวเลขแรก: "))
b = int(input("ใส่ตัวเลขต่อมา: "))
print("a x b = %d" % (a * b))

Comment

เวลาที่เขียนโค้ดไปแล้ว เราอยากเขียนหมายเหตุ หรือว่า อธิบายความหมายหรือจุดมุ่งหมายไว้ในโค้ดเพื่อให้คนที่มาดูโค้ดต่อจากเรา (หรือแม้แต่เราเองในอนาคต) เข้าใจว่ากำลังทำอะไร หรือว่าเขียนโค้ดเพื่ออะไร เราใช้วิธีแทรก comment หรือ หมายเหตุ ไว้ในโค้ด โดยใส่เครื่องหมาย # เอาไว้ข้างหน้าคำอธิบายหรือหมายเหตุนั้น

เมื่อใดก็ตามที่เราใส่เครื่องหมาย # python จะละเว้นไม่สนใจสิ่งที่ตามมาจนกว่าจะขึ้นบรรทัดใหม่ เช่น

print ("I am your father") #ตรงนี้ใช้แสดงผล

น่าจะพอทำให้เห็นแนวทางการเขียน pythonได้ง่ายขึ้น

ความคิดเห็นของคุณ :)

%d bloggers like this: