ติดตั้งโมดูลโดยใช้ pip สำหรับเวอร์ชันหลามเฉพาะ


143

บน Ubuntu 10.04 โดยค่าเริ่มต้นมีการติดตั้ง Python 2.6 จากนั้นฉันได้ติดตั้ง Python 2.7 ฉันpip installจะใช้ติดตั้งแพ็คเกจสำหรับ Python 2.7 ได้อย่างไร

ตัวอย่างเช่น:

pip install beautifulsoup4

โดยค่าเริ่มต้นจะติดตั้ง BeautifulSoup สำหรับ Python 2.6

เมื่อฉันทำ:

import bs4

ใน Python 2.6 ใช้งานได้ แต่ใน Python 2.7 ระบุว่า:

No module named bs4


คำตอบ:


57

ใช้เวอร์ชันที่pipติดตั้งกับอินสแตนซ์ Python ที่คุณต้องการติดตั้งแพ็กเกจใหม่

ในการกระจายจำนวนมากอาจจะมีแยกต่างหากpython2.6-pipและpython2.7-pipแพคเกจที่มีชื่อเรียกไบนารีเช่นและpip-2.6 pip-2.7หาก pip ไม่ได้รวมอยู่ในการแจกจ่ายของคุณสำหรับเป้าหมายที่ต้องการคุณอาจมองหา setuptools หรือ easyinstall package หรือใช้ Virtualenv (ซึ่งจะรวม pip ไว้ในสภาพแวดล้อมที่สร้างขึ้นเสมอ)

เว็บไซต์ของ pip มีคำแนะนำในการติดตั้งหากคุณไม่พบสิ่งใดในการแจกจ่ายของคุณ


6
ฉันไม่มีทั้ง pip-2.6 หรือ pip-2.7
torayeff

1
@torayeff คุณมองหาแพ็คเกจ pip เฉพาะเวอร์ชันหรือไม่? บรรจุภัณฑ์เป็นแบบเฉพาะสำหรับการจัดจำหน่ายดังนั้นคุณจะต้องทำงานเล็กน้อยด้วยตัวเอง (ค้นหาจากรายการแพ็คเกจที่มี) หรือสอบถามช่องทางการสนับสนุนเฉพาะของ Ubuntu
Charles Duffy

1
ฉันลอง easy_install -d /usr/local/lib/python2.7/ beautifulsoup4 แล้ว แต่ไม่ได้ผลคุณหมายถึงอะไรเมื่อใช้ Legwork
torayeff

3
@torayeff สิ่งเดียวกันนี้ใช้กับ easy_install เช่นเดียวกับ pip - คุณควรใช้เวอร์ชันที่สร้างขึ้นจากล่ามที่คุณพยายามติดตั้งแพ็คเกจ "legwork" เป็นคำเรียกขานที่หมายถึงความพยายามโดยทั่วไปเป็นความหลากหลายที่ไม่ได้ท้าทายสติปัญญาเป็นพิเศษ แต่อาจใช้เวลานาน (คิดคล้ายกับงานที่ต้องใช้เวลาเดินไปมา) ... ในกรณีนี้การทบทวน รายการแพ็คเกจ Ubuntu
Charles Duffy

1
@torayeff ... และอีกครั้งหากคุณไม่พบแพ็คเกจ pip ของ Ubuntu หรือติดตั้งง่ายเฉพาะสำหรับ Python 2.7 คุณสามารถติดตั้ง pip ด้วยมือตามคำแนะนำที่ฉันเชื่อมโยงไว้ในคำตอบของฉัน อย่าลืมใช้python2.7ไฟล์ปฏิบัติการเมื่อทำตามคำแนะนำเหล่านั้น
Charles Duffy

201

หรือเนื่องจากpipตัวมันเองถูกเขียนด้วย python คุณสามารถเรียกมันด้วยเวอร์ชัน python ที่คุณต้องการติดตั้งแพ็คเกจสำหรับ:

python2.7 -m pip install foo

1
ขณะที่ฉันกำลังติดตั้งด้วย pip ในสภาพแวดล้อมเสมือน (แต่จำเป็นต้องเรียกใช้กับ python ของระบบในบางอินสแตนซ์ด้วยชุด PYTHONPATH - เช่นเมื่อใช้อะไรก็ตามที่ขึ้นอยู่กับ wxPython) นี่คือคำสั่งที่ใช้ได้สำหรับฉัน
Aaron D

6
ทางออกที่ดีที่สุดสำหรับปัญหา Python2 และ Python3 ทั้งหมด!
Harsh Vardhan Ladha

9
ฉันควรทราบว่าวิธีที่ถูกต้องในการเรียกโมดูลใน python คือpython 2.7 -m pip install foo
llrs

2
ฉันไม่สามารถโหวตคำตอบนี้ได้เพียงพอ ในที่สุดก็แก้ปัญหาที่เจ็บปวดนี้ใน DietPi (Raspberry distro)
Pitto

1
@Sergio ดูเหมือนว่า -m จะผิดสำหรับฉันฉันคิดว่าคำสั่งควรจะเป็นแบบนี้มากกว่าpy37 -m "location-of-pip" install numpy
jrh

54

คุณสามารถเรียกใช้โมดูล pip สำหรับเวอร์ชัน python เฉพาะโดยใช้ python ที่เกี่ยวข้อง:

Python 2.6:

python2.6 -m pip install beautifulsoup4

Python 2.7

python2.7 -m pip install beautifulsoup4

3
ฉันท่องอินเทอร์เน็ตหลายครั้งค้นหาคำสั่งนี้ ฉันเดาว่าคนส่วนใหญ่ใช้สภาพแวดล้อมเสมือนเพื่อแก้ปัญหานี้ แต่เป็นกลยุทธ์ที่ใช้ได้ผลมากกว่าสำหรับฉัน
Dave Liu

จะเกิดอะไรขึ้นถ้าฉันอยู่ในสคริปต์ python ที่เรียก pip install beautifulsoup4 ฉันจะแน่ใจได้อย่างไรว่าสคริปต์ถูกเรียกด้วยแฟล็ก -m
Ogen

นี่เป็นปริศนาชิ้นสุดท้ายของฉันขอบคุณ! pipและpip3ทั้งคู่ถูกล็อคเป็น python3.X สำหรับฉันดังนั้นฉันจึงต้องใช้วิธีนี้เป็นวิธีอ้อมในการติดตั้ง pip สำหรับ python2.7
airdas

25

คุณสามารถใช้ไวยากรณ์นี้

python_version -m pip install your_package

ตัวอย่างเช่น. หากคุณใช้งาน python3.5 คุณตั้งชื่อมันว่า "python3" และต้องการติดตั้งแพ็กเกจ numpy

python3 -m pip install numpy

นี่เป็นเหมือนคำตอบของฉัน แต่ดีกว่าเนื่องจากไม่จำเป็นต้องใช้เส้นทางของระบบ
Turion

ดูเหมือนว่าตอนนี้จะเป็นคำตอบที่ดีที่สุด ทำงานได้อย่างสมบูรณ์แบบกับฉันเช่นกัน
LogicOnAbstractions

18

ใน Windows คุณสามารถเรียกใช้โมดูล pip ได้โดยกล่าวถึงเวอร์ชัน python (คุณต้องแน่ใจว่าตัวเรียกใช้งานอยู่ในเส้นทางของคุณ)

py -2 -m pip install pyfora

1
Thansk. มันปลุกในกรณีของฉัน ฉันมีเวอร์ชัน 3.4 และ 3.7 ฉันต้องรัน py -3.7 -m pip install -r requirements.txt เพื่อใช้ pip ที่เกี่ยวข้องกับ python 3.7
rodrigorf

6

หรือหากคุณต้องการติดตั้งแพ็กเกจเวอร์ชันเฉพาะด้วย python เวอร์ชันเฉพาะนี่คือวิธีนี้

sudo python2.7 -m pip install pyudev=0.16

หาก "=" ไม่ทำงานให้ใช้ ==

x@ubuntuserv:~$ sudo python2.7 -m pip install pyudev=0.16

ข้อกำหนดไม่ถูกต้อง: 'pyudev = 0.16' = ไม่ใช่ตัวดำเนินการที่ถูกต้อง คุณหมายถึง ==?

x@ubuntuserv:~$ sudo python2.7 -m pip install pyudev==0.16

ใช้งานได้ดี



3

หากคุณติดตั้ง python ทั้งเวอร์ชัน 2.7 และ 3.x ให้เปลี่ยนชื่อไฟล์ python exe ของเวอร์ชัน python 3.x เป็น "python.exe" เป็น "python3.exe" ตอนนี้คุณสามารถใช้ pip สำหรับทั้งสองเวอร์ชันแยกกัน หากคุณพิมพ์ "pip install" ตามปกติจะถือว่าเป็นเวอร์ชัน 2.7 ตามค่าเริ่มต้น หากคุณต้องการติดตั้งในเวอร์ชัน 3.x คุณต้องเรียกคำสั่งว่า "python3 -m pip install"


2

สำหรับ Python 3

sudo apt-get install python3-pip
sudo pip3 install beautifulsoup4

สำหรับ Python 2

sudo apt-get install python2-pip
sudo pip2 install beautifulsoup4

บน Debian / Ubuntu pipเป็นคำสั่งที่ใช้เมื่อติดตั้งแพ็คเกจสำหรับ Python 2 ในขณะที่pip3เป็นคำสั่งที่ใช้เมื่อติดตั้งแพ็คเกจสำหรับ Python 3


คำตอบนี้จะตกเมื่อคุณมี python3.6 และ python3.7 ตัวอย่างเช่น จากนั้น pip3 จะติดตั้งแพ็คเกจสำหรับ python3 เริ่มต้นเท่านั้น
muyustan


1

เช่นเดียวกับสคริปต์ python อื่น ๆ คุณสามารถระบุการติดตั้ง python ที่คุณต้องการใช้งานได้ คุณสามารถใส่สิ่งนี้ในโปรไฟล์เชลล์ของคุณเพื่อบันทึกนามแฝง $1หมายถึงอาร์กิวเมนต์แรกที่คุณส่งผ่านสคริปต์

# PYTHON3 PIP INSTALL V2
alias pip_install3="python3 -m $(which pip) install $1"

0

ฉันติดตั้ง Python 2.7 ผ่านchocolateyบน Windows และพบpip2.7.exeในC:\tools\python2\Scripts.

การใช้ปฏิบัติการนี้แทนpipคำสั่งติดตั้งโมดูลที่ถูกต้องสำหรับฉัน ( requestsสำหรับ Python 2.7)


0

ฉันประสบปัญหาเดียวกันกับแพ็คเกจอื่นที่เรียกว่า Twisted ฉันต้องการติดตั้งสำหรับ Python 2.7 แต่ได้รับการติดตั้งสำหรับ Python 2.6 เท่านั้น (เวอร์ชันเริ่มต้นของระบบ)

การเปลี่ยนแปลงง่ายๆได้ผลสำหรับฉัน

เมื่อเพิ่มพา ธ ของ Python 2.7 ไปยัง$PATHตัวแปรของคุณให้ต่อท้ายด้วยวิธีนี้: PATH=/usr/local/bin:$PATHเพื่อให้ระบบใช้เวอร์ชันนั้น

หากคุณประสบปัญหาเพิ่มเติมคุณสามารถติดตามโพสต์บล็อกนี้ซึ่งช่วยฉันได้ - https://github.com/h2oai/h2o-2/wiki/installing-python-2.7-on-centos-6.3.-follow-this-sequence - ตรงสำหรับเครื่อง centos เท่านั้น


0

เคยลองใช้กับเครื่อง Windows แล้วใช้ได้เลย

หากคุณต้องการติดตั้ง opencv สำหรับ python เวอร์ชัน 3.7 นี่เป็นวิธีที่คุณทำได้!

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