วิธีการติดตั้งแพ็คเกจหลามหลายแพคพร้อมกันโดยใช้ pip


188

ฉันรู้ว่ามันเป็นวิธีที่ง่ายในการทำ แต่ฉันไม่พบมันที่นี่หรือบน google ดังนั้นฉันอยากรู้ว่ามีวิธีการติดตั้งหลายแพคเกจโดยใช้ pip สิ่งที่ต้องการ:

pip install progra1 , progra2 ,progra3 ,progra4 . 

หรือ:

pip install (command to read some txt containing the name of the modules) 

คำตอบ:


265

สำหรับการติดตั้งหลายแพคเกจบนบรรทัดคำสั่งเพียงแค่ส่งเป็นรายการที่คั่นด้วยช่องว่างเช่น:

pip install wsgiref boto

สำหรับการติดตั้งจากไฟล์ข้อความจากนั้นจากpip install --help:

-r FILENAME, --requirement = FILENAME

ติดตั้งแพ็กเกจทั้งหมดที่แสดงในไฟล์ข้อกำหนดที่กำหนด ตัวเลือกนี้สามารถใช้ได้หลายครั้ง

ลองดูที่เอกสารประกอบ pip เกี่ยวกับไฟล์ข้อกำหนดสำหรับเลย์เอาต์และไวยากรณ์ทั่วไป - โปรดทราบว่าคุณสามารถสร้างไฟล์ขึ้นอยู่กับสภาพแวดล้อมปัจจุบัน / ไซต์แพ็กเกจด้วยpip freezeถ้าคุณต้องการตัวอย่างรวดเร็ว - เช่น (ขึ้นอยู่กับการติดตั้งwsgirefและbotoใน virtualenv สะอาด ):

$ pip freeze
boto==2.3.0
wsgiref==0.1.2

4
"รายการที่คั่นด้วยช่องว่าง" ดูเหมือนจะไม่ทำงานสำหรับฉันหากมีการพึ่งพาระหว่างแพ็คเกจเช่น: sudo -H pip install setuptools trezorทำให้เกิดข้อผิดพลาดนี้: "ไม่สามารถนำเข้า setuptools ซึ่งจำเป็นต้องติดตั้งจากการกระจายแหล่งที่มาโปรดติดตั้ง setuptools" แต่ฉันต้องรันเป็น 2 คำสั่งแยกกัน
Jonathan Cross

สิ่งนี้จะpip install wsgiref botoติดตั้งไลบรารีที่ขึ้นต่อกันหรือไม่
mockash

100
pip install -r requirements.txt

และในไฟล์ requirements.txt คุณใส่โมดูลของคุณลงในรายการโดยมีหนึ่งรายการต่อบรรทัด

  • Django = 1.3.1

  • ใต้> = 0.7

  • Django-แก้ปัญหาแถบเครื่องมือ


ฉันจะทำเช่นเดียวกันโดยใช้ conda ได้อย่างไร ความคิดใด ๆ conda intsall -r requirements.txt ไม่ทำงาน
CKM

ลองสิ่งนี้: stackoverflow.com/questions/35802939/…
tisaconundrum

คุณต้องระบุเวอร์ชัน # หรือไม่ กล่าวอีกนัยหนึ่งถ้าคุณใส่Djangoหนึ่งบรรทัดมันจะติดตั้งเวอร์ชันล่าสุดโดยอัตโนมัติหรือไม่
Jon Grah

คุณไม่จำเป็นต้องระบุหมายเลขรุ่นและโดยทั่วไปไม่จำเป็นต้องใช้แม้ว่าจะpipติดตั้งเวอร์ชันใดในบางครั้งก็ยากที่จะคาดการณ์โดยเฉพาะอย่างยิ่งหากคุณได้กำหนดค่าpipด้วยดัชนีแหล่งที่มาหลายแห่งและ / หรือตัวเลือกการกำหนดค่า ติดตั้ง ความต้องการทั่วไปคือการระบุความต้องการเวอร์ชั่นขั้นต่ำเช่นpip >= 9.0
tripleee

14

คุณสามารถติดตั้งแพคเกจการระบุไว้ในแฟ้มข้อความที่เรียกว่าไฟล์ที่ต้องการ ตัวอย่างเช่นหากคุณมีไฟล์ชื่อreq.txtที่มีข้อความต่อไปนี้:

Django==1.4
South==0.7.3

และคุณออกที่บรรทัดคำสั่ง:

pip install -r req.txt

pip จะติดตั้งแพคเกจที่ระบุไว้ในไฟล์ในการแก้ไขเฉพาะ


5

การเติมเต็มคำตอบอื่น ๆ คุณสามารถใช้ตัวเลือก--no-cache-dirเพื่อปิดการแคชใน pip เครื่องเสมือนของฉันหยุดทำงานเมื่อติดตั้งแพ็คเกจจำนวนมากพร้อมpip install -r requirements.txtกัน สิ่งที่ฉันแก้ไขคือ:

pip install --no-cache-dir -r requirements.txt

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.