φυβλαςのβλογ
บล็อกของ phyblas



[python] วิธีทำให้ import มอดูลที่ต้องการทุกครั้งเมื่อเริ่มโปรแกรม
เขียนเมื่อ 2019/01/07 15:07
แก้ไขล่าสุด 2021/09/28 16:42
ปกติเวลาเขียนโปรแกรมไพธอนเรามักจะต้องเริ่มต้นด้วยการ import มอดูลที่จำเป็น

บางมอดูลเราต้องใช้อยู่บ่อยๆตลอดเวลา เช่นบางคนทำงานด้านวิทยาศาสตร์ ต้องใช้ numpy และ matplotlib เป็นประจำ ถ้าสามารถทำให้โปรแกรมมีการ import ตลอดทุกครั้งโดยไม่ต้องมาเขียน import ตลอดก็จะประหยัดเวลาเขียนไปได้ไม่น้อย

หากต้องการทำเช่นนั้น ในไพธอนมีวิธีที่จะทำแบบนั้นได้อยู่ ในที่นี้ขอแนะนำ ๒ วิธีที่ทำได้ง่าย



วิธีแรก: กรณีที่ต้องการเฉพาะเมื่อใช้ ipython

เนื่องจากคนที่ใช้ python จำนวนมากนิยมใช้ ipython กันเป็นหลัก ในกรณีนี้มีวิธีที่ใช้การได้ง่ายๆอยู่ คือสร้างไฟล์ที่เขียนโค้ดที่ต้องการให้ทำงานเมื่อเริ่มต้นเอาไว้ แล้วนำไปวางในตำแหน่งดังนี้

สำหรับ windows ให้เข้าไปที่
C:\Users\<ชื่อผู้ใช้>\.ipython\profile_default\startup

สำหรับ mac
/Users/<ชื่อผู้ใช้>/.ipython/profile_default/startup

สำหรับ linux
/home/<ชื่อผู้ใช้>/.ipython/profile_default/startup

พอเข้าไปแล้วก็สร้างไฟล์ชื่ออะไรก็ได้ขึ้นมาเป็น .py แล้วใส่โค้ดที่ต้องการให้รันเมื่อเริ่มโปรแกรมไพธอน

ยกตัวอย่างเช่น สร้างไฟล์ชื่อว่า สิ่งที่ต้องการทำเมื่อเริ่มต้น.py เขียนว่า
import numpy as np
import matplotlib.pyplot as plt


โค้ดนี้จะทำงานทุกครั้งที่มีการเริ่มต้น ipython

ดังนั้นพอเปิด spyder ขึ้นมาแล้วลองพิมพ์ np และ plt ก็จะได้แบบนี้
In [1]: np
Out[1]: <module 'numpy' from 'C:\\Users\\phyblas\\Anaconda3\\lib\\site-packages\\numpy\\__init__.py'>
In [2]: plt
Out[2]: <module 'matplotlib.pyplot' from 'C:\\Users\\phyblas\\Anaconda3\\lib\\site-packages\\matplotlib\\pyplot.py'>

แสดงให้เห็นว่ามีการ import ไว้แล้ว ถ้าขึ้นแบบนี้ก็แสดงว่าทำสำเร็จแล้ว ต่อไปนี้เราก็ไม่ต้องคอย import ทุกครั้งที่เข้าแล้ว



อีกวิธี: กรณีที่ต้องการเมื่อรันโปรแกรมไพธอนด้วยอะไรก็ตาม

สำหรับคนที่ไม่ได้จะใช้ ipython ให้ใช้อีกวิธีนึง วิธีนี้จะมีผลตลอดไม่ว่าจะรันไพธอนด้วย ipython หรือไม่ก็ตาม

วิธีคือให้ไปตั้งตัวแปรสภาพแวดล้อมที่ชื่อ PYTHONSTARTUP ให้ไปอ่านไฟล์ที่เราต้องการให้รันเมื่อเริ่มใช้งานไพธอน

สำหรับ windows 10

ให้ไปที่ตัวเลือกมุมซ้ายล่าง พิมพ์ค้นหา "แก้ไขตัวแปรสภาพแวดล้อมของระบบ"



เมื่อเปิดขึ้นมาจะขึ้นหน้าจอแบบนี้ ให้เลือก "ตัวแปรสภาพแวดล้อม" ซึ่งอยู่ล่างขวา



เปิดขึ้นมาแล้วลองดูด้านบน จะเห็นรายการของตัวแปรผู้ใช้ ซึ่งมีอยู่หลายอย่าง

ที่เราต้องทำคือเพิ่มตัวแปรใหม่เข้าไป ให้กด "สร้าง..."

แล้วจะมีหน้าต่างขึ้นมาก็ให้ใส่ชื่อและค่าของตัวแปร ให้ใส่ชื่อเป็น PYTHONSTARTUP ส่วนค่าก็คือไฟล์ที่เราต้องการ



เช่นในตัวอย่างนี้ขอเอาคำสั่งที่ต้องการไปใส่ไว้ในไฟล์นี้ C:\Users\phyblas\Documents\singthitongkanhaithammuearoemton.py

(ชื่อไฟล์ที่ใช้ในที่นี้ไม่สามารถตั้งด้วยอักษรภาษาไทยได้)

ใส่เสร็จก็กดตกลง แล้วสิ่งที่เราใส่เข้าไปก็จะเข้าไปอยู่ในรายการตัวแปรสภาพแวดล้อม

เท่านี้เวลาเริ่มใช้งานไพธอน โค้ดจากไฟล์นี้ก็จะถูกอ่านก่อนเสมอ

สำหรับ mac

ให้ตั้งตัวแปรสภาพแวดล้อมได้โดยไปแก้ไฟล์ .bash_profile ซึ่งอยู่ในโฟลเดอร์ /Users/<ชื่อผู้ใช้>

แต่ไฟล์นี้มีชื่อขึ้นต้นด้วยจุด . ทำให้ไม่สามารถมองเห็นได้ทั่วไป ให้กดปุ่ม cmd+shift+. จึงจะมองเห็น



เปิดไฟล์ขึ้นมาแล้วไปที่บรรทัดล่างสุด เขียน export PYTHONSTARTUP="<ตำแหน่งไฟล์ที่ต้องการ>" ใส่เข้าไป เช่นถ้าจะวางทิ้งไว้ใน Desktop ก็เขียน
export PYTHONSTARTUP="/Users/phyblas/Desktop/singthitongkanhaithammuearoemton.py"

สำหรับ linux

ทำด้วยการเขียนเพิ่มบรรทัดที่ทำการ export ตัวแปรสภาพแวดล้อม คล้ายๆกันกับ mac แต่ไฟล์ที่ต้องแก้คือ .bashrc ซึ่งอยู่ในโฟลเดอร์ /home/<ชื่อผู้ใช้>


-----------------------------------------

囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧囧

ดูสถิติของหน้านี้

หมวดหมู่

-- คอมพิวเตอร์ >> เขียนโปรแกรม >> python

ไม่อนุญาตให้นำเนื้อหาของบทความไปลงที่อื่นโดยไม่ได้ขออนุญาตโดยเด็ดขาด หากต้องการนำบางส่วนไปลงสามารถทำได้โดยต้องไม่ใช่การก๊อปแปะแต่ให้เปลี่ยนคำพูดเป็นของตัวเอง หรือไม่ก็เขียนในลักษณะการยกข้อความอ้างอิง และไม่ว่ากรณีไหนก็ตาม ต้องให้เครดิตพร้อมใส่ลิงก์ของทุกบทความที่มีการใช้เนื้อหาเสมอ

สารบัญ

รวมคำแปลวลีเด็ดจากญี่ปุ่น
มอดูลต่างๆ
-- numpy
-- matplotlib

-- pandas
-- manim
-- opencv
-- pyqt
-- pytorch
การเรียนรู้ของเครื่อง
-- โครงข่าย
     ประสาทเทียม
ภาษา javascript
ภาษา mongol
ภาษาศาสตร์
maya
ความน่าจะเป็น
บันทึกในญี่ปุ่น
บันทึกในจีน
-- บันทึกในปักกิ่ง
-- บันทึกในฮ่องกง
-- บันทึกในมาเก๊า
บันทึกในไต้หวัน
บันทึกในยุโรปเหนือ
บันทึกในประเทศอื่นๆ
qiita
บทความอื่นๆ

บทความแบ่งตามหมวด



ติดตามอัปเดตของบล็อกได้ที่แฟนเพจ

  ค้นหาบทความ

  บทความแนะนำ

ตัวอักษรกรีกและเปรียบเทียบการใช้งานในภาษากรีกโบราณและกรีกสมัยใหม่
ที่มาของอักษรไทยและความเกี่ยวพันกับอักษรอื่นๆในตระกูลอักษรพราหมี
การสร้างแบบจำลองสามมิติเป็นไฟล์ .obj วิธีการอย่างง่ายที่ไม่ว่าใครก็ลองทำได้ทันที
รวมรายชื่อนักร้องเพลงกวางตุ้ง
ภาษาจีนแบ่งเป็นสำเนียงอะไรบ้าง มีความแตกต่างกันมากแค่ไหน
ทำความเข้าใจระบอบประชาธิปไตยจากประวัติศาสตร์ความเป็นมา
เรียนรู้วิธีการใช้ regular expression (regex)
การใช้ unix shell เบื้องต้น ใน linux และ mac
g ในภาษาญี่ปุ่นออกเสียง "ก" หรือ "ง" กันแน่
ทำความรู้จักกับปัญญาประดิษฐ์และการเรียนรู้ของเครื่อง
ค้นพบระบบดาวเคราะห์ ๘ ดวง เบื้องหลังความสำเร็จคือปัญญาประดิษฐ์ (AI)
หอดูดาวโบราณปักกิ่ง ตอนที่ ๑: แท่นสังเกตการณ์และสวนดอกไม้
พิพิธภัณฑ์สถาปัตยกรรมโบราณปักกิ่ง
เที่ยวเมืองตานตง ล่องเรือในน่านน้ำเกาหลีเหนือ
ตระเวนเที่ยวตามรอยฉากของอนิเมะในญี่ปุ่น
เที่ยวชมหอดูดาวที่ฐานสังเกตการณ์ซิงหลง
ทำไมจึงไม่ควรเขียนวรรณยุกต์เวลาทับศัพท์ภาษาต่างประเทศ

บทความแต่ละเดือน

2023年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

2022年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

2021年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

2020年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

2019年

1月 2月 3月 4月
5月 6月 7月 8月
9月 10月 11月 12月

ค้นบทความเก่ากว่านั้น

ไทย

日本語

中文