คำสั่งสำหรับติดตั้งไลบรารีทั้งหมดที่ระบุไว้ในไฟล์ requirements.txt ให้รันผ่าน Terminal หรือ Command Prompt ในโฟลเดอร์โปรเจกต์ของคุณ:
pip install -r requirements.txt
ข้อควรระวังและแนวทางแนะนำ
- ใช้ Virtual Environment: แนะนำให้สร้างและเปิดใช้งาน Virtual Environment (
venv) ก่อนรันคำสั่ง เพื่อป้องกันไม่ให้แพ็กเกจไปปะปนกับ Python หลักของเครื่อง - อัปเดต pip: หากพบข้อผิดพลาดขณะติดตั้ง ให้ลองอัปเดตตัวจัดการแพ็กเกจด้วยคำสั่ง
python -m pip install --upgrade pipก่อนรันใหม่อีกครั้ง
คำสั่งสำหรับส่งออก (Export) รายชื่อไลบรารีและแพ็กเกจ Python ทั้งหมดที่ติดตั้งอยู่ในสภาพแวดล้อมขณะนั้น ไปบันทึกเก็บไว้ในไฟล์
requirements.txt:pip freeze > requirements.txt
ขั้นตอนการใช้งาน
- เปิด Terminal (macOS/Linux) หรือ Command Prompt / PowerShell (Windows)
- ใช้คำสั่ง
cdเพื่อเปลี่ยน Directory ไปยังโฟลเดอร์โปรเจกต์ของคุณ - รันคำสั่งด้านบนเพื่อสร้างหรือเขียนทับไฟล์
requirements.txt
ข้อควรระวัง
- หากรันคำสั่งนี้โดยไม่ได้เปิดใช้งาน Virtual Environment (
venv) คำสั่งจะดึงรายชื่อแพ็กเกจทั้งหมดที่เคยติดตั้งไว้ใน Python หลักของเครื่องมาลงไฟล์ ซึ่งอาจรวมแพ็กเกจที่ไม่จำเป็นสำหรับโปรเจกต์นั้นๆ เข้าไปด้วย
การใช้
pipreqs จะช่วยสแกนไฟล์โค้ด .py ในโปรเจกต์และดึงมาเฉพาะไลบรารีที่มีการ import ใช้งานจริง ซึ่งแก้ปัญหาการบันทึกไลบรารีที่ไม่เกี่ยวข้องติดไปด้วยเหมือนการใช้ pip freezeขั้นตอนการใช้งาน
- ติดตั้งเครื่องมือ
pipreqs(ทำเพียงครั้งแรก):
pip install pipreqs
- เปิด Terminal หรือ Command Prompt แล้วย้ายเข้าโฟลเดอร์โปรเจกต์:
cd /path/to/your/project
- รันคำสั่งสแกนและสร้างไฟล์:
pipreqs ./
ตัวเลือกเสริมที่ใช้บ่อย
- เขียนทับไฟล์เดิม: หากมีไฟล์
requirements.txtอยู่แล้ว ให้ใส่--forceเพื่อเขียนทับpipreqs ./ --force - ระบุ Encoding: หากเกิดข้อผิดพลาดเกี่ยวกับภาษา/อักขระ (Encoding Error) ให้ระบุ UTF-8
pipreqs ./ --encoding=utf-8
ส่งออกย้าย Environment บน Conda (ไฟล์ environment.yml)
หากต้องการบันทึกโครงสร้างแพ็กเกจทั้งหมดรวมถึงตัว Python Version เพื่อนำไปย้ายสภาพแวดล้อมระหว่าง Conda ด้วยกัน แนะนำให้สร้างไฟล์ .yml แทน:
conda env export > environment.yml
(เมื่อต้องการนำไปติดตั้งในเครื่องอื่น ให้ใช้คำสั่ง conda env create -f environment.yml)
การจัดการแพ็กเกจด้วย
requirements.txt บน PyCharm สามารถทำได้ผ่านทั้งหน้าต่าง GUI ของโปรแกรมและคำสั่ง Terminal1. สร้างไฟล์ requirements.txt ผ่าน PyCharm GUI (แนะนำ)
PyCharm มีฟีเจอร์ช่วยสร้างไฟล์นี้ให้อัตโนมัติโดยไม่ต้องพิมพ์คำสั่ง:
- คลิกขวาที่โฟลเดอร์โปรเจกต์ (ฝั่งซ้ายในช่อง Project Tree)
- เลือก New ➔ File แล้วตั้งชื่อไฟล์ว่า
requirements.txt - เมื่อเปิดไฟล์ขึ้นมา หาก PyCharm ตรวจพบแพ็กเกจที่ใช้อยู่ในโปรเจกต์ จะมีแถบสีเหลืองแจ้งเตือนขึ้นมาด้านบน ให้คลิก Write requirements to file เพื่อดึงรายชื่อแพ็กเกจลงไฟล์ทันที
2. รันคำสั่งสร้างไฟล์ผ่าน Terminal ใน PyCharm
เปิดแท็บ Terminal ด้านล่างของ PyCharm (ตัวโปรแกรมจะเปิด Virtual Environment ของโปรเจกต์ให้โดยอัตโนมัติ) แล้วเลือกใช้คำสั่งตามความต้องการ:
- บันทึกแพ็กเกจทั้งหมดใน Environment:
pip freeze > requirements.txt - สแกนเฉพาะไลบรารีที่ถูก import ใช้งานจริง (ใช้ pipreqs):
pip install pipreqs pipreqs ./ --force
3. ติดตั้งแพ็กเกจจาก requirements.txt บน PyCharm
- เมื่อคุณเปิดไฟล์
requirements.txtขึ้นมา PyCharm จะแสดงแถบแจ้งเตือนสีเหลืองด้านบนว่า Package requirements are not satisfied ให้คลิก Install requirements ที่มุมขวาบนของแถบนั้นได้ทันที - หรือรันคำสั่งในแท็บ Terminal ด้านล่าง:
pip install -r requirements.txt
การสร้างไฟล์
requirements.txt บน Jupyter Notebook สามารถพิมพ์รันคำสั่ง Shell Command (ขึ้นต้นด้วย !) ลงใน Cell ของ Notebook ได้เลย1. บันทึกแพ็กเกจทั้งหมดใน Environment (ใช้ pip freeze)
พิมพ์คำสั่งในช่อง Cell แล้วกด Shift + Enter เพื่อรัน:
!pip freeze > requirements.txt
2. สแกนเฉพาะไลบรารีที่ถูก import ใช้งานจริง (ใช้ pipreqs)
หากมีไลบรารีในเครื่องเยอะเกินไป และต้องการดึงมาเฉพาะที่ใช้จริงในไฟล์
.ipynb หรือ .py:!pip install pipreqs
!pipreqs ./ --force --ignore-notebooks # หากต้องการสแกนรวมไฟล์ .ipynb ให้รัน !pipreqs ./ --force
3. ติดตั้งแพ็กเกจจาก requirements.txt ผ่าน Notebook
หากต้องการสั่งติดตั้งแพ็กเกจจากไฟล์
requirements.txt เข้า Environment ที่ Jupyter กำลังใช้อยู่:!pip install -r requirements.txt

ความคิดเห็น
แสดงความคิดเห็น