สำหรับบทความนี้แอดขอเอาใจนักเรียน นักเขียนโค้ด สาย Python สาย Data ที่ใช้ Jupyter Notebook กันหน่อย แอดเชื่อว่าใครเคยเขียน Python มามือใหม่ก็ได้ใช้ หรือบางคนอาจจะเคยใช้ผ่าน Google Colab มันก็แบบเดียวกันครับ เผื่อใครยังสับสน

ทำไมต้องรู้คำสั่งลับใน Jupyter Notebook?
สาเหตุที่มันลับเพราะแอดสังเกตุเห็นว่ามีหลายคนยังไม่รู้ โดยพวกคำสั่งพวกนี้มันก็คือ Magic Commands + Keyboard Shortcuts ที่จะช่วยให้เราทำงานได้ลื่น ๆ ขึ้น จริงมั้ยเดี๋ยวเรามาดูกันครับ
ตัวอย่างโค้ดจะอยู่ในลิงก์นี้น้าาาา
1. %time และ %%time — วัดเวลาโค้ดอย่างแม่นยำอยากรู้ว่าโค้ดใช้เวลารันเท่าไหร่? ใช้คำสั่งนี้เลย
%time sum(range(10_000_000))Bash
หรือวัดทั้งบล็อกได้แบบนี้
%%time
total = 0
for i in range(10):
total += iBash
เหมาะสุดเวลาเปรียบเทียบความเร็วของอัลกอริทึมหรือโค้ดสองแบบ
2. %prun — วิเคราะห์ Performance ของโค้ดอย่างละเอียด
ต่างจาก %time เพราะ %prun จะบอกว่าแต่ละบรรทัดในโค้ดใช้เวลามากแค่ไหน

3. %run — รัน Notebook หรือ Script อื่นได้ทันที
แทนที่จะ copy โค้ดจากไฟล์อื่น ลองรันตรง ๆ ได้เลย
%run my_script.pyBashหรือแม้แต่ .ipynb ก็ใช้ได้

4. %lsmagic — ดูคำสั่งลับทั้งหมดในระบบ
อยากรู้ว่ามี Magic Command อะไรบ้าง? ใช้นี่เลย
%lsmagic

จะเห็น %time, %store, %matplotlib, %who, %env และอีกเพียบ
5. %history — ดูประวัติคำสั่งที่เคยรันใน Notebook
อยากรู้ว่าเคยรันคำสั่งอะไรไปบ้าง?

6. A / B — แทรกเซลล์แบบไม่ต้องแตะเมาส์
- a ➜ เพิ่มเซลล์ด้านบน
- b ➜ เพิ่มเซลล์ด้านล่าง
อันนี้แอดใช้บ่อย เพราะไม่อยากเอามือไปเลื่อนไปหยิบ เมาส์เล็งปุ่ม + แล้วค่อยมาพิมพ์โค้ด อันนี้กด a กด b เพิ่มแล้วเขียนโค้ดรันได้เลย
7. %%bash — รันคำสั่ง Shell ได้ทันที
%%bash
echo "Hello from Bash"
lsBashคำสั่งนี้มีประโยชน์หลายอย่าง เพราะตอนที่เรารันโค้ด บางครั้งอาจจะต้องมีรันคำสั่ง Bash เพื่อจัดการโน่นนี่ในเครื่อง Host หรืองานที่ต้องใช้คำสั่ง Bash
8. %whos — ดูตัวแปรทั้งหมดใน Memory

%whosBashคำสั่งนี้ก็จะเป็นคำสั่งที่น่าสนใจที่บอกบอกชื่อ, type, และขนาดของตัวแปรทั้งหมดในปัจจุบัน
ทั้งหมดนี้ก็เป็นเพียง 8 คำสั่งที่น่าสนใจและมีประโยชน์สำหรับแอด หากใครมีคำสั่งอื่น ๆ ที่เจ๋ง ๆ เพิ่มเติมสามารถแชร์มาบอกพวกเราเพิ่มกันได้นะครับ