เขียน 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
ทีนี้ ในกรณีที่เราเขียนคำสั่ง 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
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ได้ง่ายขึ้น
Learn Python – เรียนรู้ไพธอนไปด้วยกัน
Divider
บันทึกส่วนตัว เกี่ยวกับการเรียนรู้ภาษาไพธอน