จะติดตั้ง pip สำหรับ Python 3 บน Mac OS X ได้อย่างไร


128

OS X (Mavericks) มีการติดตั้งสต็อค Python 2.7 แต่ฉันทำสิ่งหลามส่วนตัวกับ 3.3 ฉันเพิ่งล้างการติดตั้ง 3.3.2 และติดตั้ง 3.3.3 ใหม่ ดังนั้นฉันต้องติดตั้งpyserialอีกครั้ง ฉันสามารถทำสิ่งที่ฉันเคยทำมาก่อนซึ่งก็คือ:

  1. ดาวน์โหลด pyserial จาก pypi
  2. untar pyserial.tgz
  3. ซีดี pyserial
  4. python3 setup.py install

pip3 install pyserialแต่ผมอยากจะทำเช่นเดียวกับเย็นเด็กทำและเพียงแค่ทำสิ่งที่ชอบ แต่ยังไม่ชัดเจนว่าฉันไปถึงจุดนั้นได้อย่างไร และเพียงแค่จุดนั้น ยังไม่สนใจ (เว้นแต่ฉันจะต้องเป็น) ใน virtualenv เลย

คำตอบ:


131

UPDATE: ไม่จำเป็นต้องใช้กับ Python3.4 อีกต่อไป มันติดตั้ง pip3 เป็นส่วนหนึ่งของการติดตั้งสต็อก

ฉันสิ้นสุดการโพสต์คำถามเดียวกันนี้ในรายการส่งเมลงูและได้รับคำตอบต่อไปนี้:

# download and install setuptools
curl -O https://bootstrap.pypa.io/ez_setup.py
python3 ez_setup.py
# download and install pip
curl -O https://bootstrap.pypa.io/get-pip.py
python3 get-pip.py

ซึ่งแก้ไขคำถามของฉันได้อย่างสมบูรณ์แบบ หลังจากเพิ่มสิ่งต่อไปนี้สำหรับฉัน:

cd /usr/local/bin
ln -s ../../../Library/Frameworks/Python.framework/Versions/3.3/bin/pip pip

เพื่อให้ฉันสามารถเรียกใช้ pip ได้โดยตรงฉันสามารถ:

# use pip to install
pip install pyserial

หรือ:

# Don't want it?
pip uninstall pyserial

7
เพื่อหลีกเลี่ยงความสับสนกับการpipติดตั้งสำหรับ Python 2.7 คุณสามารถสร้าง symlink ชื่อpip3แทนที่จะคลุมเครือpip
jfs

5
ฉันไม่ต้องสร้าง symlink หนึ่งถูกสร้างขึ้นโดยอัตโนมัติชื่อ pip3
radtek

ทำตามคำตอบของคุณทีละขั้นตอนแก้ไขปัญหาของฉัน ขอบคุณ!
Madhulika Mukherjee


1
bootstrap.pypa.io/ez_setup.pyและbootstrap.pypa.io/get-pip.pyเป็นลิงก์ที่อัปเดตแม้ว่า pip3 จะติดตั้งด้วย python3 ตามที่ OP ได้กล่าวไว้
shazeline

66

ฉันต้องผ่านกระบวนการนี้ด้วยตนเองและเลือกวิธีที่แตกต่างที่ฉันคิดว่าดีกว่าในระยะยาว

ฉันติดตั้งโฮมบรูว์

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

แล้ว:

brew doctor

ขั้นตอนสุดท้ายให้คำเตือนและข้อผิดพลาดบางอย่างที่คุณต้องแก้ไข หนึ่งในนั้นจะได้รับการดาวน์โหลดและติดตั้งระบบปฏิบัติการ Mac OS X เครื่องมือบรรทัดคำสั่ง

แล้ว:

brew install python3

สิ่งนี้ทำให้ฉันpython3และpip3ในเส้นทางของฉัน

pieter$ which pip3 python3
/usr/local/bin/pip3
/usr/local/bin/python3

2
ขอบคุณสำหรับสิ่งนี้กำลังมองหาทางออกที่ดี สำหรับคนที่เห็นนี้ในอนาคต (ซึ่งจะได้รับข้อความเดียวกันผมได้จากทับทิม) ที่ติดตั้ง Homebrew ได้ย้ายและคำสั่งใหม่คือ: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
nonex

58

ติดตั้งPython3บน mac

1. brew install python3
2. curl https://bootstrap.pypa.io/get-pip.py | python3
3. python3

ใช้pip3เพื่อติดตั้งโมดูล

1. pip3 install ipython
2. python3 -m IPython

:)


1
เพียงเพื่อชี้แจงให้คนอื่น ๆ สคริปต์ที่ดาวน์โหลดมาจากโฮสต์อย่างเป็นทางการสำหรับ pip - pypi.python.org/pypi/pip
Taylor Edmiston

โปรดเพิ่ม https ให้กับตัวอย่างนี้
การ์ดเนอร์ Bickford

1
@GardnerBickford เพิ่ม https
Alan Dong


12
  1. brew install python3
  2. สร้างนามแฝงในโปรไฟล์เชลล์ของคุณ

    • เช่น. alias pip3="python3 -m pip"ในของฉัน.zshrc

➜ ~ pip3 - รุ่น

pip 9.0.1 จาก /usr/local/lib/python3.6/site-packages (python 3.6)


12

นี่คือทางออกที่ง่ายของฉัน:

หากคุณติดตั้งทั้ง python2 และ python3 ในระบบของคุณการอัพเกรด pip จะชี้ไปที่ python2 ตามค่าเริ่มต้น ดังนั้นเราต้องระบุเวอร์ชันของ python (python3) และใช้คำสั่งด้านล่าง:

python3 -m pip install --upgrade pip

คำสั่งนี้จะถอนการติดตั้ง pip ที่ติดตั้งไว้ก่อนหน้านี้และติดตั้ง Pip เวอร์ชั่นใหม่ของคุณ

วิธีนี้จะช่วยประหยัดหน่วยความจำและทำให้ระบบของคุณช้าลง

รูปภาพ - การอัพเกรด pip ใน Python3 ทำงานอย่างไรบน MacOS


1
ขอบคุณ! นี่คือสิ่งที่ฉันกำลังมองหา - ใช้งาน macOS Catalina
Devran Cosmo Uenal

ขอบคุณมากบันทึกไว้ค่อนข้างพยายาม
Ashish Rawat

7

การใช้ Python EasyInstall (ซึ่งเป็นสิ่งที่ฉันคิดว่าคุณต้องการใช้) นั้นง่ายมาก!

sudo easy_install pip

ดังนั้นด้วย pip ที่จะติดตั้ง Pyserial คุณต้องทำ:

pip install pyserial

4
easy_install ระบุได้อย่างไรว่ามีไว้สำหรับ python3 ฉันมี\usr\local\bin\easy_installวันที่ 13 ก.ย. 2555 ฉันสงสัยว่ามาจาก / สำหรับหุ้น 2.7 น่าเศร้าที่easy_install --versionไม่มีประโยชน์อะไรเลย --helpไม่แม้แต่ให้คำแนะนำที่เป็นประโยชน์
Travis Griggs

1
@TravisGriggs - คุณติดตั้ง 2.7 แล้วหรือยัง ฉันสมมติว่าคุณใช้ 3.3.x เท่านั้น
l'L'l

3
ฉันยังไม่ได้ถอนการติดตั้งรุ่น 2.7 หุ้นซึ่งเป็นส่วนหนึ่งของ OSX ดูเหมือนว่าจะเป็นความคิดที่ไม่ดี (tm)
Travis Griggs

@TravisGriggs การถอนการติดตั้ง 2.7 อย่างดีอาจเป็นความคิดที่ดีถ้าทำไม่ถูกต้อง ลองพิมพ์which easy_installใน terminal less <path/to/>easy_installต่อไปโดย ควรให้ข้อมูลเพิ่มเติมเกี่ยวกับเวอร์ชันที่คุณใช้
l'L'l

ใช่ฉันตรวจสอบแล้ว มันเป็นไบนารีไม่ใช่ symlink เนื่องจาก python3 ติดตั้งเป็นส่วนใหญ่/Library/Frameworks/Python/...ทำให้ฉันสงสัยอย่างมากว่ามันคือ 2.7
Travis Griggs

5

นอกจากนี้ยังเป็นเรื่องที่ควรกล่าวถึงว่าผู้ใช้ Max OSX / macOS สามารถใช้Homebrewเพื่อติดตั้ง pip3 ได้

$> brew update
$> brew install python3
$> pip3 --version
pip 9.0.1 from /usr/local/lib/python3.6/site-packages (python 3.6)

5

บนMac OS X Mojave pythonอัฒจันทร์สำหรับหลามของรุ่น 2.7 และpython3สำหรับหลามของ 3 รุ่นเดียวกันเป็นและpip pip3ดังนั้นเพื่ออัปเกรดpipเพื่อpython 3ทำสิ่งนี้:

~$ sudo pip3 install --upgrade pip


4

pip ถูกติดตั้งโดยอัตโนมัติด้วย python2 โดยใช้ brew:

  1. brew install python3
  2. pip3 --version

$ ซึ่ง pip3 python3 / usr / local / bin / python3 ได้รับผล แต่เมื่อฉันลอง pip3 --version ข้อผิดพลาด: pip3: ไม่พบคำสั่ง
flik

1

เรียกใช้การติดตามบนเทอร์มินัลหากคุณไม่ได้ติดตั้ง pip บน mac ของคุณ

sudo easy_install pip

ดาวน์โหลด python 3 ที่นี่: python3

เมื่อคุณทำตามขั้นตอน 2 ขั้นตอนเหล่านี้แล้วให้ดำเนินการดังต่อไปนี้เพื่อตรวจสอบว่าคุณได้ติดตั้งเรียบร้อยแล้วหรือไม่

python3 --version
pip3 --version

0

สำหรับ Mac เครื่องใหม่คุณต้องทำตามขั้นตอนด้านล่าง: -

  1. ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้ง Xcode
  2. sudo easy_install pip
  3. /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
  4. brew doctor
  5. brew doctor
  6. brew install python3

และคุณก็ทำเสร็จแล้วแค่พิมพ์python3เทอร์มินัลแล้วคุณจะเห็น python 3 ติดตั้งอยู่


0

ฉันมีปัญหาเดียวกันกับ python3 และ pip3 การตัดสินใจ: การแก้ไขข้อขัดแย้งทั้งหมดกับลิงค์และสิ่งอื่น ๆ เมื่อทำ

brew doctor

หลังจากนั้น

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