Automate the Boring Stuff with Python ฉบับแรก: เขียน Python เพื่อลดงานซ้ำในออฟฟิศ
หนังสือ Python สำหรับคนที่ไม่ได้จะเป็นโปรแกรมเมอร์อาชีพของ Al Sweigart บทความนี้อ่านบางบทของฉบับแรก (2015) ที่ผู้เขียนเปิดให้อ่านออนไลน์ ได้แก่บทนำและบทที่ 12 เรื่อง Excel เพื่อช่วยตัดสินว่าเล่มนี้เหมาะกับคุณหรือไม่

ขอบเขตของบทความ: อ่านบางบทของฉบับแรก (No Starch Press, 2015) ที่ผู้เขียนเผยแพร่ให้อ่านออนไลน์ ได้แก่บทนำทั้งบทและบทที่ 12 Working with Excel Spreadsheets รวมกับสารบัญฉบับแรกและข้อมูลแคตตาล็อก ยังไม่ได้อ่านบทอื่น ข้อสังเกตเรื่องบทอื่นมาจากสารบัญและภาพรวมในบทนำเท่านั้น
นักวิเคราะห์หรือคนทำงานการเงินจำนวนมากใช้เวลาหลายชั่วโมงต่อสัปดาห์กับงานซ้ำ เช่น คัดลอกข้อมูลจากไฟล์หนึ่งไปอีกไฟล์ เปลี่ยนชื่อไฟล์จำนวนมาก หรือปรับสเปรดชีตทีละแถว คนกลุ่มนี้ไม่ได้อยากเป็นนักพัฒนาซอฟต์แวร์ แค่อยากให้คอมพิวเตอร์ทำงานน่าเบื่อแทน หนังสือเล่มนี้เขียนให้คนกลุ่มนั้นโดยตรง
หนังสือเล่มนี้ว่าด้วยอะไร
Automate the Boring Stuff with Python: Practical Programming for Total Beginners เขียนโดย Al Sweigart ฉบับแรกตีพิมพ์โดย No Starch Press ปี 2015 ISBN 9781593275990 ความยาว 504 หน้าตาม Open Library
ผู้เขียนเปิดให้อ่านเนื้อหาฉบับแรกออนไลน์ที่ automatetheboringstuff.com/1e ปัจจุบันหน้าหลักของเว็บไซต์เป็นฉบับที่ 3 และหน้าหลักระบุว่าเนื้อหาออนไลน์อยู่ภายใต้สัญญาอนุญาต Creative Commons แบบ BY-NC-SA 3.0 (หน้าหลักของเว็บไซต์)
เนื้อหาครอบคลุมหัวข้ออะไร
สารบัญฉบับแรกบนเว็บไซต์มีบทนำ 18 บท และภาคผนวกสามส่วน บทนำแบ่งหนังสือเป็นสองภาค:
ภาค | บท | หัวข้อตามสารบัญ |
|---|---|---|
Part I: พื้นฐาน Python | 1–6 | Python Basics, Flow Control, Functions, Lists, Dictionaries and Structuring Data, Manipulating Strings |
Part II: งานอัตโนมัติ | 7–18 | Regular Expressions, Reading and Writing Files, Organizing Files, Debugging, Web Scraping, Excel Spreadsheets, PDF and Word Documents, CSV Files and JSON Data, Keeping Time and Scheduling Tasks, Sending Email and Text Messages, Manipulating Images, GUI Automation |
ภาคผนวกว่าด้วยการติดตั้งโมดูลเสริม การรันโปรแกรม และเฉลยคำถามท้ายบท บทนำระบุว่าแต่ละบทในภาคที่สองมีโปรเจกต์ให้ศึกษา
แนวคิดที่น่าสนใจจากบทที่อ่าน
บทนำ
เขียนให้ "คนอื่นทุกคน" ผู้เขียนบอกตรง ๆ ว่าหนังสือไม่ได้มีไว้เปลี่ยนผู้อ่านเป็นนักพัฒนาซอฟต์แวร์อาชีพ แต่เขียนให้พนักงานออฟฟิศ ผู้ดูแลระบบ นักวิชาการ และคนที่ใช้คอมพิวเตอร์ทำงาน ให้เขียนโปรแกรมอัตโนมัติง่าย ๆ ได้ เช่น ย้ายและเปลี่ยนชื่อไฟล์จำนวนมาก กรอกฟอร์มออนไลน์ หรือปรับสเปรดชีต Excel
เลือกความง่ายมากกว่าความสวยของโค้ด ส่วน Conventions ระบุว่าหนังสือไม่ใช่คู่มืออ้างอิง โค้ดบางส่วนขัดกับแนวปฏิบัติที่ดี เช่น ใช้ global variable เพื่อให้เรียนง่าย และไม่ครอบคลุม object-oriented programming, list comprehension และ generator
ไม่ต้องเก่งคณิตศาสตร์ ผู้เขียนเปรียบการเขียนโปรแกรมกับการแก้ซูโดกุ คือการแตกปัญหาเป็นขั้นตอนย่อยและใช้ตรรกะ มากกว่าการคำนวณ
ใช้ Python 3 บทนำเตือนว่าโปรแกรมในเล่มเขียนสำหรับ Python 3 และอาจทำงานไม่ถูกต้องบน Python 2
บทที่ 12 Working with Excel Spreadsheets
บทที่ 12 ใช้โมดูล openpyxl อ่านและเขียนไฟล์ Excel บทนี้ระบุว่าอ้างอิง openpyxl เวอร์ชัน 2.3.3 เนื้อหาไล่ตั้งแต่เปิด workbook ดึง sheet และ cell แปลงตัวอักษรคอลัมน์เป็นตัวเลข เขียนค่าและสูตรลงเซลล์ เช่น =SUM(B1:B8) ปรับฟอนต์ ความกว้างคอลัมน์ freeze panes และสร้างกราฟ
โปรเจกต์หลักคืออ่านสเปรดชีตข้อมูลสำมะโนประชากรสหรัฐฯ ปี 2010 แล้วรวมจำนวนประชากรและจำนวน census tract ของแต่ละ county ซึ่งผู้เขียนชี้ว่าถ้าทำด้วยมือต้องเลือกเซลล์ของกว่า 3,000 county อีกโปรเจกต์คือแก้ค่าในสเปรดชีตตามข้อมูลที่กำหนด ผู้เขียนสรุปโครงสร้างที่ใช้ซ้ำได้ไว้ว่า โปรแกรมที่อ่าน Excel ส่วนใหญ่จะโหลดไฟล์ เตรียมโครงสร้างข้อมูล แล้ววนอ่านทีละแถว และเสนอไอเดียต่อยอด เช่น เทียบข้อมูลข้ามหลายไฟล์ หรือตรวจหาแถวว่างและข้อมูลผิดรูปแบบ
สำหรับคนทำงานการเงิน บทนี้น่าจะเป็นจุดเริ่มที่ใช้ได้ทันที เพราะงานจำนวนมากยังอยู่ในไฟล์ Excel ข้อนี้เป็นข้อสังเกตของบทความ
พื้นฐานที่ควรมีก่อนอ่าน
ไม่ต้องมีพื้นฐานการเขียนโปรแกรมมาก่อน บทนำเริ่มตั้งแต่อธิบายว่าการเขียนโปรแกรมคืออะไรและวิธีติดตั้ง Python ส่วนคณิตศาสตร์ ผู้เขียนระบุว่าการเขียนโปรแกรมส่วนใหญ่ใช้แค่เลขคณิตพื้นฐาน
เหมาะกับใคร และใครควรเริ่มจากเล่มอื่นก่อน
เหมาะ กับคนทำงานที่ใช้ Excel ไฟล์เอกสาร หรือเว็บไซต์ทุกวัน และอยากเริ่มเขียน Python เพื่อลดงานซ้ำ
เหมาะ กับผู้เริ่มต้นที่อยากเห็นผลเป็นโปรแกรมที่ใช้ได้จริงตั้งแต่ต้น
ไม่เหมาะ กับคนที่ต้องการเรียนแนวปฏิบัติการเขียนโค้ดระดับมืออาชีพหรือเตรียมเป็นนักพัฒนาซอฟต์แวร์ ผู้เขียนบอกเองว่าหนังสือเลือกความง่ายแทนแนวปฏิบัติที่ดีและข้ามหัวข้ออย่าง OOP
ควรรู้ว่าเป็นฉบับแรก ตัวอย่างอ้างอิงเครื่องมือรุ่นปี 2015 เช่น
openpyxl2.3.3 และ Python 3.4 คำสั่งบางส่วนอาจต่างจากเวอร์ชันปัจจุบัน ปัจจุบันมีฉบับที่ 3 ซึ่ง No Starch Press ระบุว่าออกเมษายน 2025 ความยาว 672 หน้า
ข้อจำกัดของข้อมูลที่ใช้ในบทความนี้
อ่านบทนำและบทที่ 12 ของฉบับแรกบนเว็บไซต์ผู้เขียน บทอื่นสรุปจากสารบัญและย่อหน้าภาพรวมในบทนำ
หน้าหลักของฉบับแรกบนเว็บไซต์มีข้อความว่าเป็นหน้าของฉบับที่ 2 ซึ่งขัดกับชื่อหน้า แต่สารบัญที่แสดงมี 18 บท และบทนำอ้าง Python 3.4 ซึ่งสอดคล้องกับฉบับปี 2015 บทความนี้ถือว่าเป็นเนื้อหาฉบับแรก
บทความนี้ไม่ได้รันโค้ดในบทที่ 12
แหล่งอ้างอิง
Automate the Boring Stuff with Python, 1st Edition · Al Sweigart · สารบัญฉบับแรก
Chapter 0: Introduction · Al Sweigart · บทนำทั้งบท
Chapter 12: Working with Excel Spreadsheets · Al Sweigart · บทที่ 12 ทั้งบท
Automate the Boring Stuff with Python · Al Sweigart · หน้าหลักฉบับที่ 3 และสัญญาอนุญาต
Automate the Boring Stuff with Python, 3rd Edition · No Starch Press · ข้อมูลฉบับที่ 3
Open Library: 9781593275990 · Internet Archive · ข้อมูลฉบับแรก ปี และจำนวนหน้า
หนังสือที่กล่าวถึงในบทความนี้

Automate the Boring Stuff with Python
Al Sweigart
ฉบับแรกสอน Python 3 พื้นฐานแล้วต่อด้วยโปรเจกต์อัตโนมัติ เช่น จัดการไฟล์ web scraping, Excel, PDF, CSV และ JSON สำหรับผู้เริ่มต้นที่ไม่ต้องมีพื้นคณิตศาสตร์
บทความนี้อ่านจบได้ในตัวเอง หนังสือด้านบนคือจุดต่อยอดสำหรับผู้ที่ต้องการศึกษาลึกขึ้น
อ่านต่อ
25 ตุลาคม 2569
C++ Concurrency in Action ฉบับที่ 2: ภาพรวมเนื้อหาและพื้นฐานที่ควรมีหนังสือของ Anthony Williams ว่าด้วยการเขียนโปรแกรม multithreaded ด้วย C++ ฉบับปรับปรุงสำหรับ C++14 และ C++17 บทความนี้สรุปจากหน้าสำนักพิมพ์ Manning roadmap ของหนังสือ และ repository โค้ดทางการ
25 ตุลาคม 2569
A Tour of C++ (ฉบับแรก): ภาพรวม C++11 ฉบับย่อจาก Bjarne Stroustrupหนังสือขนาดราว 180 หน้าของผู้ออกแบบภาษา C++ ที่สรุปทั้งตัวภาษาและ standard library ของ C++11 สำหรับโปรแกรมเมอร์ที่มีประสบการณ์ บทความนี้แนะนำขอบเขตเนื้อหาจากสารบัญบนหน้าสำนักพิมพ์และเว็บไซต์ผู้เขียน
25 ตุลาคม 2569
Computer Networking: A Top-Down Approach ฉบับที่ 7: เรียนเครือข่ายจากชั้น application ลงไปตำราเครือข่ายคอมพิวเตอร์ของ James F. Kurose และ Keith W. Ross ที่สอนจากชั้น application ลงไปถึงชั้นกายภาพ บทความนี้สรุปจากข้อมูลแคตตาล็อก หน้าสำนักพิมพ์ Pearson และข่าวจาก NYU เพื่อช่วยดูว่าเล่มนี้เหมาะกับคุณหรือไม่
