ใช้ Jupyter Notebook ให้ง่ายขึ้นด้วย PyCharm

Supanat Jintawatsakoon
3 min readSep 24, 2017

ความดีงามของการใช้งาน Jupyter Notebook ก็คือ Notebook นี่แหละ เพราะ มันเหมือนสมุดจดบันทึกการทดลอง เราสามารถใช้ markdown สร้าง documentได้ตามต้องการ

ยาวไปไม่อ่าน? ปรกติเราใช้ Jupyter Notebook ผ่าน Web Browser แต่ถ้าใช้ Jupyter Notebook ผ่าน PyCharm เราจะใช้งาน Code Completion แบบดีๆได้ ชีวิตก็ง่ายขึ้นไปอีกเรื่อง รายละเอียดอ่านต่อในบทความได้เลย

ใครที่เคยเขียนโปรแกรมด้วย IDE อื่นๆมาก่อน อย่าง Eclipse , Visual Studio ฯลฯ ก็อาจจะรู้สึกว่าชีวิตน่าจะดีขึ้นถ้า Jupyter Jupyter Notebook มันมี code completion ขึ้นมาให้เราตอนกำลังพิมพ์ มันช่วยเราได้มากๆเลยนะ พิมพ์ผิดน้อยลง ใช้เวลาน้อยลง และที่สำคัญสุดคือมันทำให้เรารู้ว่าเราจะทำอะไรกับฟังก์ชั่นนั้นๆได้บ้าง

บทความนี้ก็ขอเสนอวิธีใช้งาน Jupyter Notebook บน IDE ที่ชื่อ PyCharm

(สำหรับบน macOS เท่านั้นนะครับ)

ก่อนอื่นเลยเราต้องมี Jupyter Notebook Server (อาจจะรันอยู่บนเครืองเรานี่แหละ) ซึ่งผมเองก็ใช้ Anaconda เพราะง่ายต่อการจัดการ หากยังไม่มีก็ไปหามาติดตั้งได้ง่ายๆ ไม่กี่ขั้นตอน https://www.anaconda.com/download/

หลังจาก Anaconda นอนรอพร้อมใช้ในเครื่องเราแล้ว ก็ถึงเวลา IDE ของเรา PyCharm ก็ไปโหลดมาติดตั้งกันได้เลย https://www.jetbrains.com/pycharm/

มาถึงตรงนี้ถ้าใครเคยใช้ InteliJ , WebStorm , Android Studio มาก่อนคงจะพอเดาได้แล้วหละว่า PyCharm มันน่าจะเจ๋งแค่ไหน แต่ถ้าใครไม่เคยใช้ก็ไม่เป็นไร เรามาพิสูจน์ไปด้วยกัน

บทความนี้ขอพูดถึงการใช้ Jupyter Notebook บน PyCharm เท่านั้นนะครับ ซึ่งก็เป็นแค่ส่วนนึงในความสามารถทั้งหมดของ PyCharm

  1. Run Jupyter Notebook ขึ้นมาตามปกติ (คลิก Launch ตรงหน้าต่าง Anaconda Navigator) เราก็จะได้ Jupyter Console ขึ้นมาบน Web Browser

2. ให้สังเกตว่าก่อนที่ Web Browser โผล่ขึ้นมามันจะมี Termimal ขึ้นมาก่อน ให้เรา copy url ใน Terminal ตรง The Jupyter Notebook is running at:

3. เปิด PyCharm แล้วก็ Create New Project ขึ้นมา ตรงนี้ขอให้เลือก interpreter เป็น anaconda ด้วยนะครับ

4. เพิ่ม Jupyter Notebook File ขึ้นมาก่อน

5. ลองเขียนดู ก็มี code completion แล้วนะ

6. ลองรันดู กด Shift + Enter เหมือนกันเลย จะมีหน้าต่างโผล่ขึ้นมา ให้เราเอา url ที่ copy มาจาก Terminal (ขั้นตอนที่ 2) มาวางในช่องนี้ได้เลย จริงๆแล้วจะ copy มาแค่ token มาวางต่อก็ได้เหมือนกัน

ที่เหลือก็ลองเล่นกันดูตามสะดวกเลยนะ

ข้อดี

  1. ใช้งานได้เหมือน Notebook
  2. มี Code Completion ดีๆ
  3. มี Project & Structure Panel อยู่ด้านซ้าย จัดการไฟล์ได้สะดวกๆ

ข้อเสีย

  1. แต่ละ cell เวลาเราพิมพ์โค้ด มันไม่ปรับขนาดให้ตอนพิมพ์ อันนี้แอบหงุดหงิดมาก

2. เปิด PyCharm ขึ้นมามันก็ใช้แรมไปเยอะเหมือนกันนะ

จบแค่นี้ก่อนละกันครับ หากมีส่วนใดผิดพลาด ไม่ถูกต้อง ก็ขออภัยและขอคำชี้แนะด้วยนะครับ

Happy Coding

--

--

Supanat Jintawatsakoon

Lecturer in College of Digital Innovation Technology at Rangsit University