ภาษา Python คือ? ทำอะไรได้บ้าง (ฉบับเต็มปี 2023)

   By: DH Team

   อัปเดตล่าสุด Feb. 2, 2024

ภาษา Python คือ? ทำอะไรได้บ้าง (ฉบับเต็มปี 2023)

อยากเริ่มต้นเรียนโปรแกรมมิ่งหรือโค้ดดิ้ง แต่ไม่รู้ว่าจะเลือกเรียนภาษาไหนดีและไม่รู้ว่าจะนำไปใช้ในด้านไหนได้บ้าง ? วันนี้ขอนำเสนอภาษาโปรแกรมมิ่งที่มาแรงที่สุดในยุคนี้ "ภาษาไพธอน" หรือเขียนว่า "ไพทอน" ก็ได้เช่นกัน ภาษาที่น้อยคนที่สนใจด้านโปรแกรมมิ่งจะไม่รู้จัก เพราะว่าเป็นภาษาที่ฮิตไปทั่วบ้านทั่วเมือง


แต่หลายคนคงจะมีคำถามว่า "เมื่อเรียนภาษา Python แล้วนั้น จะนำไปทำอะไรได้บ้าง?" ซึ่งอย่างที่บอกครับว่าภาษา Python นั้นเป็นภาษาที่ครอบจักรวาลจริง ๆ ทำได้หลากหลายด้านมาก ๆ จึงไม่แปลกครับว่าทำไมคนส่วนใหญ่ชอบเรียน Python กัน วันนี้เราจะพาไปดูภาพรวมของภาษาให้ครอบคลุมในทุกมิติกัน รับรองว่าอ่านบทความนี้จบแล้วเพื่อน ๆ จะเข้าใจถึงจุดเด่น จุดด้อยของภาษา และแน่นอนว่าเราจะเข้าใจและเลือกนำเจ้าภาษา Python นี้ไปใช้งานด้านไหนได้บ้างครับที่เหมาะสำหรับงานของเรา


ภาษา Python คือ ?

ภาษาไพธอน (Python Programming Language) คือ หนึ่งในภาษาโปรแกรมมิ่งที่มาแรงมากที่สุดในยุคปัจจุบัน ถูกพัฒนาขึ้นในปี 1989 โดย Guido Van Rossum นักวิทยาศาสตร์คอมพิวเตอร์ชาวเนเธอแลนด์ (ประวัติเพิ่มเติมอยู่ด้านล่าง) โดยถูกจัดอยู่ในจำพวกภาษาแบบ Interpreted Programming Language (แปลโค้ดขณะรันโค้ด) ตรงกันข้ามกับ Compiled Languages อย่าง เช่น C, C++, Java เป็นต้น


ประวัติความเป็นมาของภาษา Python

นี่คือประวัติแบบคร่าว ๆ ของไพธอนครับ

  • ปี 1989: Guido van Rossum นักวิทยาศาสตร์คอมพิวเตอร์ชาวดัตช์ (เนเธอร์แลนด์) ได้เริ่มทำงานเกี่ยวกับภาษาโปรแกรมมิ่งภาษาใหม่ที่อ่านและเขียนได้ง่าย เขาตั้งชื่อตามชื่อ Flying Circus ของ Monty Python ซึ่งเป็นรายการตลกของอังกฤษที่เขาชอบดู
  • ปี 1991: เวอร์ชันแรกของ Python คือ เวอร์ชัน 0.9.0 ได้รับการเผยแพร่ออกมาและมีฟีเจอร์หลายอย่างที่ยังคงมีอยู่ใน Python เวอร์ชันใหม่ เช่น Class Inheritance, Exception Handling และ Modules
  • ปี 1994: Python 1.0 เปิดตัว มีฟีเจอร์ใหม่ ๆ เช่น Lambda, Filter, Map และ Reduce ซึ่งทำให้โปรแกรมทำงานได้ง่ายขึ้น นอกจากนี้ยังเพิ่มการรองรับโมดูล ซึ่งอนุญาตให้โปรแกรมเมอร์จัดระเบียบโค้ดของตนเองเป็นไฟล์แยกต่างหาก
  • ปี 2000: Python 2.0 เปิดตัว ฟีเจอร์ใหม่ ๆ ที่เพิ่มเข้ามาในเวอร์ชันนี้ เช่น List Comprehension, Garbage Collector และการสนับสนุน Unicode
  • ปี 2008: Python 3.0 เปิดตัว Python โดยเวอร์ชันนี้เป็นการอัปเดตครั้งใหญ่ก็ว่าได้ ซึ่งจะไม่รองรับการทำงานแบบย้อนกลับกับเวอร์ชันก่อนหน้า และยังได้ลบฟีเจอร์หลายอย่างที่ถือว่าซ้ำซ้อน (redundant) หรือทำให้ผู้ใช้สับสนออกไป และได้นำเอาฟังก์ชันในปัจจุบันของ Python เข้ามาใช้ในเวอร์ชันนี้ ซึ่งฟังก์ชันที่ว่านี้ก็คือ "print( )" ซึ่งสาวกไพธอนหรือคนที่ใช้งานอยู่คงรู้จักกันดีครับ ทำให้การเขียนโค้ดทั้งใน Python 2 และ 3 ได้ง่ายขึ้น



Guido Van Rossum ผู้สร้างภาษาไพธอน (Image source: WikiPedia)

ตั้งแต่นั้นมา Python ก็พัฒนาอย่างต่อเนื่อง โดยมีเวอร์ชันใหม่ๆ ออกมาอย่างสม่ำเสมอ ปัจจุบัน Python เป็นหนึ่งในภาษาโปรแกรมที่ได้รับความนิยมมากที่สุดในโลก โดยมีชุมชนนักพัฒนาขนาดใหญ่ ถูกนำไปใช้งานได้หลากหลาย รวมถึงการพัฒนาเว็บ (Web Development) การวิเคราะห์ข้อมูล (Data Analysis)  ปัญญาประดิษฐ์และการเรียนรู้ของเครื่อง (AI & Machine Learning) เป็นต้น ซึ่งจะอธิบายเพิ่มเติมในด้านล่างครับ

จุดเด่นและจุดด้อยของภาษา Python 

มาดูว่าภาษานี้ข้อดีข้อเสียหรือจุดเด่นจุดด้อยตรงไหนบ้างครับ

จุดเด่นของ Python

  • ไวยากรณ์ (Syntax) ของภาษานั้นอ่านและทำความเข้าใจได้ง่าย มีความตรงไปตรงมา คล้ายคลึงกันกับภาษาอังกฤษเลยก็ว่าได้
  • สามารถนำไปประยุกต์ใช้งานได้หลากหลายด้าน ไม่ว่าจะเป็น Web Development, Data Science, AI & Machine Learning, GUI, Automation, Network Systems, Games, Web Scraping, etc (ภาษาเดียว ทำได้เยอะขนาดนี้เลยครับ)
  • มี community ขนาดใหญ่ มีแหล่งเรียนรู้เยอะ อันเนื่องมาจากความนิยมของภาษานั่นเอง ทำให้จะเรียนหรือค้นหาข้อมูลอะไรเกี่ยวกับ Python ก็มีเยอะแยะเต็มไปหมดครับ
  • Python เป็น open source ซอฟต์แวร์ เราสามารถโหลดใช้งานได้ฟรีไม่ต้องมีค่า license ต่าง ๆ
  • มีไลบรารี่ต่าง ๆ เยอะแยะมากมายให้เลือกใช้งาน
  • ฯลฯ (จริง ๆ ยังมีมากกว่านี้อีก)

จุดด้อยของ Python

  • ในด้านความเร็ว ถือว่าเป็นภาษาที่มีความเร็วในการประมวลผลช้ากว่าภาษาแนว Compiled Languages อย่างเช่น C, C++ เป็นต้น เพราะว่า Python นั้นจัดการหน่วยความจำให้เราอัตโนมัติ สังเกตง่าย ๆ ตอนกำหนดตัวแปรเราก็ไม่ต้องกำหนด Type ของตัวแปรเลย (อันนี้แค่ส่วนหนึ่ง)
  • ไม่ใช่ภาษา Native สำหรับพัฒนา Mobile App นี่เป็นหนึ่งในไม่กี่ด้านที่ภาษาไพธอนทำได้ไม่เต็มที่ครับ (ถึงแม้จะไลบรารีสำหรับทำด้านนี้อยู่บ้าง แต่ก็ไม่นิยม) โดยถ้าเป็นด้านพัฒนาแอพมือถือ ที่แนะนำก็จะเป็นภาษาหรือเครื่องมือจำพวก Flutter, React Native, Kotlin, Swift เป็นต้น แต่วงเล็บเอาไว้ว่าเราสามารถใช้ Python ทำเป็น API ฝั่งหลังบ้านของ Mobile App ได้สบายครับ


คำสั่ง ไวยากรณ์ (Syntax) ของไพธอน

นี่คือตัวอย่างไวยากร์ (Syntax) ของภาษาไพธอน เพื่อให้มองเป็นภาพรวมดูก่อนนะครับ

แสดงผล Hello, world

msg = "Hello, world"
print(msg)


ประกาศตัวแปร (Variable)

name = "Isara"
age = 20


คอมเมนต์บรรทัดเดียว (Single-line Comment)

# นี่คือคอมเมนต์ 1 บรรทัด


คอมเมนต์หลายบรรทัด (Multiline Comments) โดยการใข้ """...""" (เครื่องหมาย Triple Quotes)

"""
Multiline comment ของ Python
และข้อความข้างในจะไม่ถูกรัน
"""


สร้างฟังก์ชันและเรียกใช้งาน

# สร้างฟังก์ชัน
def greet():
print("Hello, devhub.in.th")

# เรียกใช้งานฟังก์ชัน
greet()


ตัวอย่างฟังก์ชัน (2)

def add_val(x, y):
return x + y


If-else

if condition:
# Statement
else:
# Statement


ตัวอย่าง If-else

x = 5
if x < 5:
print("x น้อยกว่า 5")
elif x==5:
print("x เท่ากับ 5")
else:
print("x มากกว่า 5")
# Output: x เท่ากับ 5"


คำสั่ง For Loop (อ่านเพิ่มเพิ่มเติม Python For Loop)

lang = "Python" # Python String
for l in lang:
print(l)


จะได้

# ผลลัพธ์
P
y
t
h
o
n


Class & Object (อ่านเพิ่มเติม Python OOP)

class Cat:
def __init__(self, name, age):
self.name = name
self.age = age

def display_name(self):
print(self.name, "is my cat name")

cat1 = Cat("SomSom", 5)
cat2 = Cat("Salid", 7)

print(cat1.name) # Output: SomSom
print(cat2.age) # Output: 7

cat2.display_name() # Output: Salid is my cat name


เพียงเท่านี้ก็น่าจะทำให้ผู้อ่านมองเห็นภาพรวมโครงสร้างและไวยากรณ์ของภาษาไพทอนกันแล้วนะครับ


ภาษา Python ทำอะไรได้บ้าง ?

เมื่อเราทราบจุดเด่นของ Python รวมทั้งไวยากรณ์ (syntax) ว่าเป็นอย่างไร ต่อไปนี้คือสายงานที่ไพธอนสามารถนำไปประยุกต์ใช้ได้อย่างสบาย ๆ เลยครับ


1. Data Science

Data Science (วิทยาศาสตร์ข้อมูล) เป็นสายงานที่เกี่ยวข้องกับกระบวนการในการจัดการกับข้อมูลเช่น การรวบรวมข้อมูล (Data Manipulation) การทำความสะอาดข้อมูล (Data Cleansing) การเตรียมข้อมูล (Data Preparation) และการแสดงผลข้อมูล (Data Visualization) เป็นต้น


ภาษา Python มีบทบาทในด้านวิทยาศาสตร์ข้อมูลอย่างมาก ถ้าพูดถึงงานด้านนี้ภาษาไพธอนต้องถูกนึกถึงเป็นภาษาแรก ๆ เลยครับ เหตุที่ไพธอนได้รับความนิยมในเหล่านักวิทยาศาสตร์ข้อมูล (Data Scientists) เนื่องจากความสามารถในการอ่านข้อมูล ประสิทธิภาพ ความยืดหยุ่น และความสะดวกในการใช้งาน รวมไปถึงระบบนิเวศ (Ecosystem) ที่เอื้ออำนวยของ Python ที่มีมากกว่าภาษาอื่น ๆ


Python Data Science Libraries

  • Pandas
  • NumPy
  • SciPy
  • OpenCV
  • Matplotlib
  • Plotly
  • Etc


2. Web Development

Python เป็นอีกหนึ่งภาษายอดนิยมสำหรับทำเว็บไซต์หรือแอปพลิเคชัน โดยจะทำหน้าที่ในส่วนของหลังบ้านหรือที่มักเรียกกันว่า Back-end หรือ Server-side ซึ่งเป็นส่วนที่ผู้ใช้มองไม่เห็น โดยส่วน back-end นี้เองจะทำหน้าที่ส่งข้อมูลและติดต่อกับเซิร์ฟเวอร์ รวมถึงการประมวลผลข้อมูลหรือติดต่อสื่อสารกับฐานข้อมูล (database) โดยเฟรมเวิร์คที่ได้รับความนิยมในด้าน web development นั้นก็มีอยู่หลายตัวเลยทีเดียว ไม่ว่าจะเป็น Django, Flask และเฟรมเวิร์คน้องใหม่มาแรงแซงทางโค้งอย่าง FastAPI


แนะนำคอร์สเรียนแบบตัวต่อตัวสุด private: พัฒนาเว็บไซต์มืออาชีพด้วย Django Framework


Python Web Frameworks

  • Django
  • Flask
  • FastAPI
  • Etc



3. AI & Machine Learning

แมชชีนเลิร์นนิง (ML) และปัญญาประดิษฐ์ (AI) เป็นอีกสายงานที่ไพธอนมีความโดดเด่นเป็นอย่างมาก ดังนั้นย่อมนำมาซึ่งเครื่องมือต่าง ๆ มากมายให้เลือกใช้ และยังมีไลบรารี่และแพ็คเกจต่าง ๆ มากมายรวมถึงมีบริษัทใหญ่ ๆ เป็น backup ด้านนี้ให้ตัวอย่างเช่น TensorFlow (Google เป็นผู้พัฒนา) หรือไม่ว่าจะเป็น PyTorch (Meta หรือ Facebook เดิมเป็นผู้พัฒนา)

Libraries & Frameworks ยอดนิยม

  • TensorFlow (Google เป็นผู้พัฒนา)
  • PyTorch (Meta หรือ Facebook เดิมเป็นผู้พัฒนา)
  • Scikit-Learn
  • Theano
  • etc

และรวมไปถึงไลบรารี่อื่น ๆ ไม่ว่าจะเป็น Keras, Scikit-learn เป็นต้น


4. GUI (Desktop App)

GUI (Graphical User Interface) Python ก็มีไลบรารี่ด้านนี้อยู่หลายตัว โดยตัวที่เป็นมาตรฐานและมีมาให้ใน Python นั้นก็คือ Tkinterโดยตัว Tkinter นี้เองก็สามารถเขียนครั้งเดียวรันได้ทุกแพลตฟอร์ม (Cross Platform) ไม่ว่าจะเป็น Windows, macOS และ Linux

ซึ่ง Tkinter นั้นใช้งานง่าย แต่ข้อเสียคือหน้าตา GUI ที่ได้อาจจะดูโบร่ำโบราณไปนิดนึง ดังนั้นสำหรับท่านใดที่ซีเรียสเรื่องหน้าตาของโปรแกรมแล้วนั้น Tkinter อาจจะไม่เหมาะ แต่ก็จะมีอีกตัวที่แนะนำก็คือ PyQT และ PySide โดย 2 ตัวนี้จะมี QT designer มาให้ในตัว และมีคอมโพเนนท์ที่สวยงามมากกว่า Tkinter แบบเทียบไม่ได้เลย

GUI Libraries ยอดนิยม

  • Tkinter
  • PyQt
  • PySide
  • wxPython
  • Kivy
  • PyGUI
  • Etc


5. Web Scraping & Automation

Web Scraping คือขั้นตอนการดึงข้อมูลจากหน้าเว็บไซต์ โดยภาษาไพธอนก็มีไลบรารี่ที่เกี่ยวข้องในงานด้านนี้ ที่นิยมก็อย่างเช่น Beautiful Soup (สำหรับจัดการสกัดเอาข้อมูล) และ requests (ไลบรารี่ที่เอาไว้ใช้ในการสร้าง HTTP requests) และยังมีอีกตัวเช่น Selenium แต่ตัวนี้จะใช้สำหรับกรณีของเว็บที่เราต้องการทำ web scraping แต่เว็บนั้นใช้ภาษา JavaScript ในการพัฒนา

Web Scraping Libraries ยอดนิยม

  • Scrapy
  • BeautifulSoup
  • Selenium
  • PyAutoGUI

สรุป

Python ภาษาที่ถูกสร้างขึ้นในปี 1989 (มีอายุกว่า 34 ปีแล้ว) คือภาษายอดนิยมที่สุดในยุคนี้ก็ว่าได้เลยครับ สถาบันการศึกษาต่าง ๆ ทั้งระดับโรงเรียน มหาวิทยาลัย ฯลฯ ก็ใช้เป็นภาษาในการสอนนักเรียนนักศึกษา ด้วยความง่ายในการเรียนรู้ทำความเข้าใจ มี resources ต่าง ๆ ให้ศึกษามากมาย

จากข้อมูลด้านบนจากตอนแรกที่หลายคนอาจจะสงสัยว่า "Python ทำอะไรได้บ้าง?" แต่ตอนนี้หลายคนอาจจะเปลี่ยนคำถามใหม่กันแล้วครับว่า "Python ทำอะไรไม่ได้บ้าง?" เพราะว่าไพธอนนั้นทำได้มากมายหลากหลายด้านจริง ๆ ครับ ภาษาเดียวครบเลย

แนะนำ: คอร์สเรียนไพทอน ออนไลน์ รวม Python Courses ไว้มากสุดแห่งหนึ่งในไทย (เรียนกันจุก ๆ ไปเลย)


อ้างอิงเพิ่มเติม


จ้างโปรแกรมเมอร์หรือนักพัฒนาสำหรับโปรเจคท์ด้าน Software Development เช่น Website, Web App, Mobile App หรือสอนโค้ดดิ้ง คลาสอบรม?

เพิ่มเพื่อน LINE OA