วิธีเรียกใช้ Spyder ในสภาพแวดล้อมเสมือนจริง?


102

ฉันใช้ Spyder ที่ติดตั้งกับการแจกจ่าย Anaconda ซึ่งใช้ Python 2.7 เป็นค่าเริ่มต้น ขณะนี้ฉันต้องการตั้งค่าสภาพแวดล้อมเสมือนสำหรับการพัฒนาด้วย Python 3.4

คำแนะนำสองอันดับแรกหลังการค้นคว้าทางออนไลน์ ได้แก่ :

  1. เพื่อตั้งค่าสภาพแวดล้อมเสมือนก่อนและชี้ให้เห็นการเปลี่ยนแปลงการตั้งค่าของ Spyder เช่นที่นี่ ;
  2. ในการติดตั้งทั้งหมดอ้างอิง Spyder เช่น PyQt4 ในสภาพแวดล้อมเสมือนตัวเองเช่นที่นี่ ;

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

มีวิธีแก้ปัญหาที่อนุญาตให้เรียกใช้ Spyder ด้วย Python เวอร์ชันที่ต้องการโดยอัตโนมัติหลังจากเปิดใช้งานสภาพแวดล้อมเสมือนที่ต้องการหรือไม่?

คำตอบ:


125

นี่คือวิธีที่รวดเร็วในปี 2020 การใช้ Anaconda Navigator:

  1. เปิด Anaconda Navigator
  2. สร้างสภาพแวดล้อมใหม่ของคุณตามที่คุณต้องการ ฉันตั้งชื่อสภาพแวดล้อมนี้ว่า "การทดสอบ" คลิกเพื่อเปิดใช้งาน

ป้อนคำอธิบายภาพที่นี่

  1. ไปที่ "Home" และคลิกที่ "Install" ใต้ช่อง Spyder

ป้อนคำอธิบายภาพที่นี่

  1. คลิก "เปิด / เรียกใช้"

ยังคงมีข้อบกพร่องเล็กน้อยบางอย่างเมื่อตั้งค่าสภาพแวดล้อมของคุณ (ซึ่งส่วนใหญ่แก้ไขได้โดยการรีสตาร์ท Navigator) หากคุณพบข้อบกพร่องโปรดโพสต์ไว้ในตัวติดตามข้อบกพร่องของAnaconda Issues ขอบคุณ.


หากยังไม่ได้ผล Navigator ก็ยังคงมีประโยชน์อยู่การคลิกที่> สภาพแวดล้อมจะนำคุณไปยังหน้าต่างการจัดการสำหรับโมดูลที่ติดตั้งในสภาพแวดล้อมดังกล่าวค้นหาและเลือกสิ่งที่เกี่ยวข้องกับสปายเดอร์จากนั้นคลิกที่ใช้จะติดตั้งและ การพึ่งพาของพวกเขา

ป้อนคำอธิบายภาพที่นี่


13
สิ่งนี้ควรเพิ่มลงในโซลูชันอันดับต้น ๆ ถ้าเป็นไปได้
dward4

2
วิธีที่ดีกว่า
Eric Auld

2
ใช่. ดูเหมือนว่าจะต้องติดตั้ง Spyder อินสแตนซ์ที่แตกต่างกันสำหรับ VE
Mikhail Genkin

4
ฉันสามารถทำได้จากบรรทัดคำสั่งหรือไม่ การใช้ Navigator แต่ละครั้งดูเหมือนจะลาก ...
nocibambi

1
@nocibambi ใช่ถ้าคุณหมายถึงแค่เรียกใช้ Spyder ใน env จาก cmd ดูด้านล่างของคำตอบของ tomaskazemekas
Lorenz

106

มีตัวเลือกในการสร้างสภาพแวดล้อมเสมือนใน Anacondaด้วยเวอร์ชัน Python ที่ต้องการ

conda create -n myenv python=3.4

ในการเปิดใช้งาน:

source activate myenv   # (in linux, you can use . as a shortcut for "source")
activate myenv          # (in windows - note that you should be in your c:\anaconda2 directory)

อัปเดต ฉันได้ทดสอบกับ Ubuntu 18.04 แล้ว ตอนนี้คุณต้องติดตั้ง spyder เพิ่มเติมสำหรับสภาพแวดล้อมใหม่ด้วยคำสั่งนี้ (หลังจากเปิดใช้งานสภาพแวดล้อมด้วยคำสั่งด้านบน):

conda install spyder

(ฉันได้ทดสอบการติดตั้งด้วย pip ด้วย แต่สำหรับ Python 3.4 หรือเวอร์ชันเก่ากว่านั้นจะเกิดข้อผิดพลาดในการพึ่งพาไลบรารีที่ต้องติดตั้งด้วยตนเอง)

และตอนนี้เพื่อเรียกใช้ Spyder ด้วย Python 3.4 เพียงพิมพ์:

spyder

Spyder พร้อม Python 3.4

แก้ไขจากผู้อ่าน:

สำหรับการเปิดปกติใช้ "งู Prompt"> activate myenv> spyder(จาก "งู Prompt" จะต้องเปิดอยู่คุณจะไม่สามารถใช้งานได้สำหรับคำสั่งอื่น ๆ และแรงใกล้จะปิด Spyder) แน่นอนว่าเร็วกว่าการโหลด "Anaconda Navigator"> สภาพแวดล้อมการสลับ> เปิด Spyder (คำตอบของ @ adelriosantiago)


7
ฉันได้ทดสอบสิ่งนี้บน Windows 7 และใช้งานได้ คุณไม่จำเป็นต้องเพิ่มคำว่า "แหล่งที่มา" ในตอนต้นเพื่อเปิดใช้งานสภาพแวดล้อม หากต้องการมี Python 2,7 ให้เปลี่ยนการตั้งค่าเป็น python = 2.7
tomaskazemekas

4
โอ้บางทีคุณอาจต้องติดตั้งสปายเดอร์ในสภาพแวดล้อมนั้นก่อน? ฉันสร้างสภาพแวดล้อมด้วย numpy แทนที่จะเป็น anaconda ดังนั้นมันอาจจะเรียกใช้ spyder จากสภาพแวดล้อมหลัก?
endolith

4
ดูเหมือนจะเป็นปัญหา สิ่งเดียวกันกับ ipython แต่ได้รับการแก้ไขหลังจากติดตั้งภายในสภาพแวดล้อม
endolith

9
ฉันยังพบว่าบน windows (10) เพิ่งเปิดตัว spyder จากสภาพแวดล้อม anaconda ยังคงเปิดตัว spyder ด้วย python เริ่มต้นของฉันและฉันต้อง conda ติดตั้ง spyder ในสภาพแวดล้อม anaconda ก่อนเพื่อเปิด spyder ด้วย python ของสภาพแวดล้อมนั้น
Max Power

9
ตรวจสอบให้แน่ใจว่าคุณมีสปายเดอร์อยู่ในสภาพแวดล้อมนั้นโดยconda install -n myenv spyder
shahar_m

57

เพิ่มเติมสำหรับคำตอบของ tomaskazemekas: คุณควรติดตั้ง spyder ในสภาพแวดล้อมเสมือนจริงโดย:

conda install -n myenv spyder

(บน Windows สำหรับ Linux หรือ MacOS คุณสามารถค้นหาคำสั่งที่คล้ายกันได้)


2
Spyder มักจะติดตั้งเป็นส่วนหนึ่งของ Anconda หลามรายการแพคเกจ อาจจำเป็นต้องติดตั้งเพิ่มเติมในกรณีของมินิคอนดา
tomaskazemekas

1
ถูกต้องเลย. ในกรณีของฉันฉันเคยติดตั้งสภาพแวดล้อมเสมือนจริงมาก่อนและเป็นเวอร์ชันเบาฉันติดตั้งเฉพาะแพ็คเกจที่จำเป็นเท่านั้น ฉันเดาว่ามีใครบางคนอยู่ในสถานการณ์ของฉัน
Tin Luu

@tomaskazemekas ครับฉันติดตั้ง miniconda3 :) ฉันจะรันโค้ด python ใน spyder ได้อย่างไรเพราะฉันไม่รู้วิธีเรียกใช้ spyder เมื่อฉันพิมพ์ "spyder" ใน miniconda prompt "ไม่รู้จักคำสั่งนี้" จะเกิดข้อผิดพลาด
Noman marwat

Marwat @Noman ตั้งแต่ Spyder ไม่ได้เป็นส่วนหนึ่งของ miniconda conda install spyderคุณจะต้องติดตั้งก่อนที่จะใช้กับคำสั่ง
tomaskazemekas

หลังจากนั้นให้มองหา symlink ภายในmyenv/binไดเร็กทอรีและคัดลอกลงในApplicationsโฟลเดอร์เพื่อให้คุณสามารถค้นหาและเปิด Spyder ภายในสภาพแวดล้อมได้โดยไม่ต้องพิมพ์ในหน้าต่างเล็ก ๆ สีดำ! (คุณสามารถเพิ่มไอคอนได้อย่างง่ายดายเช่นกันหากคุณเป็นไอคอน)
PatrickT

51

อะไรที่เหมาะกับฉัน:

  1. เรียกใช้ spyder จากสภาพแวดล้อม (หลังจากเปิดใช้งานแหล่งที่มา)
  2. ไปที่ Tools -> การตั้งค่า -> python Interpreter และเลือกไฟล์ python จาก env ที่คุณต้องการเชื่อมโยงspyder เช่น: / home / you / anaconda3 / envs / your_env / bin / python

ทำงานบน Ubuntu 16, spyder3, python3.6


หลังจากลองใช้โพสต์ที่เหลือทั้งหมดนี้และโพสต์อื่น ๆ (ลองสองวัน!) นี่เป็นวิธีแก้ปัญหาเดียวที่ใช้ได้ผลเพื่อกำหนดสภาพแวดล้อมที่เหมาะสมภายใน Spider ..
Antonio Canepa

ไม่ต้องใช้ขั้นตอนที่ (1) เนื่องจากขั้นตอน (2) ได้กำหนดเส้นทางล่ามไปยังสภาพแวดล้อมแล้ว
Feras

3
@Feras สำหรับผู้อ่านในอนาคต: ฉันยังคิดว่าขั้นตอนที่ 1 ซ้ำซ้อน แต่การละเว้นมันทำให้เกิดข้อผิดพลาดที่บ้าคลั่งทุกประเภท (และยังทำให้ UI เกิดข้อผิดพลาดและ Spyder ไม่ตอบสนอง)
cheekybanana

27

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

โดยสรุป (ทดสอบด้วย conda):

  • ควรติดตั้ง Spyder ในสภาพแวดล้อมพื้นฐาน

จากระบบแจ้ง:

  • สร้างสภาพแวดล้อมใหม่ โปรดทราบว่าขึ้นอยู่กับว่าคุณสร้างมันอย่างไร (conda, Virtualenv) โฟลเดอร์สภาพแวดล้อมจะอยู่ในตำแหน่งที่แตกต่างกันในระบบของคุณ)

  • เปิดใช้งานสภาพแวดล้อม (เช่นconda activate [yourEnvName])

  • ติดตั้ง spyder-kernels ภายในสิ่งแวดล้อม (เช่นconda install spyder-kernels)

  • ค้นหาและคัดลอกเส้นทางสำหรับ python ที่เรียกใช้งานได้ภายในสภาพแวดล้อม การค้นหาเส้นทางนี้สามารถทำได้โดยใช้จากพรอมต์คำสั่งนี้python -c "import sys; print(sys.executable)"

  • ปิดใช้งานสภาพแวดล้อม (เช่นกลับสู่ฐานconda deactivate)

  • เรียกใช้ spyder ( spyder3)

  • สุดท้ายในเมนู Spyder Tool ไปที่ Preferences> Python Interpreter> ใช้ตัวแปลต่อไปนี้และวางเส้นทางปฏิบัติการของ python ของสภาพแวดล้อม

  • รีสตาร์ทคอนโซล ipython

PS: ใน spyder คุณควรเห็นสิ่งนี้ที่ด้านล่างป้อนคำอธิบายภาพที่นี่

Voila


1
นี่เป็นคำตอบเดียวที่สมเหตุสมผล
sjsam

โปรดทราบว่าเมื่อใช้ Virtualenv & spyder 4.1.3 จะไม่มีสิ่งใดปรากฏขึ้นที่บรรทัดล่างสุดยืนยัน (ทุกอย่างทำงานตามที่ตั้งใจไว้)
Alexis

นี่คือคำตอบที่ถูกต้อง! นอกจากนี้การติดตั้งสปายเดอร์สามารถอยู่ในสภาพแวดล้อมเสมือนจริงของ conda ไม่จำเป็นต้องอยู่ในสภาพแวดล้อมพื้นฐาน
Sanchit

2
คุณพูดถูก @Sanchit คุณสามารถ "pip / conda" ติดตั้งสปายเดอร์ในแต่ละสภาพแวดล้อมแล้วสามารถเรียกใช้งานได้จากที่นั่น แต่เมื่อคุณต้องการติดตั้งเพียงครั้งเดียวนี่คือวิธีแก้ปัญหา
Alexis

10

คำตอบข้างต้นถูกต้อง แต่ฉันเรียกspyderภายใน Virtualenv จะยังคงใช้PATHเพื่อค้นหาเวอร์ชันของ spyder ใน anaconda env เริ่มต้นของฉัน ฉันพบคำตอบนี้ซึ่งให้วิธีแก้ปัญหาต่อไปนี้:

source activate my_env            # activate your target env with spyder installed
conda info -e                     # look up the directory of your conda env
find /path/to/my/env -name spyder # search for the spyder executable in your env
/path/to/my/env/then/to/spyder    # run that executable directly

ฉันเลือกสิ่งนี้มากกว่าการแก้ไขPATHหรือเพิ่มลิงก์ไปยังไฟล์ปฏิบัติการที่มีลำดับความสำคัญสูงกว่าPATHเนื่องจากฉันรู้สึกว่ามันมีโอกาสน้อยที่จะทำลายโปรแกรมอื่น ๆ อย่างไรก็ตามฉันได้เพิ่มนามแฝงให้กับไฟล์ปฏิบัติการใน~/.bash_aliases.


8

ฉันเพิ่งมีปัญหาเดียวกันกับการพยายามให้ Spyder ทำงานใน Virtual Environment

วิธีแก้ปัญหานั้นง่ายมาก:

เปิดใช้งานสภาพแวดล้อมเสมือนของคุณ

จากนั้น pip ติดตั้ง Spyder และการอ้างอิง (PyQt5) ในสภาพแวดล้อมเสมือนของคุณ

จากนั้นเปิด Spyder3 จาก CLI สภาพแวดล้อมเสมือนของคุณ

ตอนนี้ใช้งานได้ดีสำหรับฉัน


1
สิ่งนี้ใช้ไม่ได้กับ python2 ภายใต้ ubuntu 16 อีกต่อไป มีความคิดเกี่ยวกับการทำงานหรือไม่?
masad

Python 2 เลิกใช้งานแล้ว ขอแนะนำและแนะนำให้อัปเกรดตัวเองไปใช้ Python 3
Jerusalem Programmer

4

บน Windows:

คุณสามารถสร้างทางลัดดำเนินการ

Anaconda3\pythonw.exe Anaconda3\cwp.py Anaconda3\envs\<your_env> Anaconda3\envs\<your env>\pythonw.exe Anaconda3\envs\<your_env>\Scripts\spyder-script.py

อย่างไรก็ตามหากคุณเริ่มสปายเดอร์จาก Venv ของคุณภายใน Anaconda shell มันจะสร้างทางลัดนี้ให้คุณโดยอัตโนมัติในเมนู Windows ขั้นตอน:

  1. ติดตั้ง spyder ใน venv ของคุณโดยใช้วิธีการที่กล่าวถึงในคำตอบอื่น ๆ ที่นี่

  2. (ใน anaconda :) เปิดใช้งาน testenv

  3. ค้นหาเมนู windows "เพิ่มล่าสุด" หรือเพียงแค่ค้นหา "spyder" ในเมนู windows ค้นหาspyder (testenv)และ

  • [เพิ่มในแถบงาน] และ / หรือ

  • [ค้นหาตำแหน่งแหล่งที่มาของไฟล์] และคัดลอกไปยังเดสก์ท็อปของคุณเช่นจากC:\Users\USER\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Anaconda3 (64-bit)ที่ซึ่งสามารถพบลิงก์สปายเดอร์สำหรับสภาพแวดล้อมของฉันได้

ตอนนี้คุณสามารถเริ่มสปายเดอร์ได้โดยตรงจากทางลัดโดยไม่จำเป็นต้องเปิดพรอมต์อนาคอนดา


1

ฉันทำตามคำแนะนำข้างต้นและได้ผลจริง โดยสรุปในขณะที่คุณดาวน์โหลด Anaconda บน Ubuntu โดยใช้คำแนะนำที่ให้ไว้ข้างต้นสามารถช่วยคุณในการ'สร้าง'สภาพแวดล้อมได้ เริ่มต้นเมื่อคุณดาวน์โหลด Spyder ในกรณีของฉันคือ(ฐาน) smith @ อูบุนตู ~ $ หลังจากที่คุณสร้างสภาพแวดล้อมเช่น fenics และเปิดใช้งานได้ด้วย $ CONDA เปิดใช้งาน fenicsการเปลี่ยนแปลงพร้อมที่จะ(fenics) smith @ อูบุนตู ~ $ จากนั้นคุณเปิด Spyder จากข้อความแจ้งนี้นั่นคือ$ spyderและระบบของคุณเปิด Spyder IDE และคุณสามารถเขียนโค้ด fenics ลงไปได้ จำไว้ทุกครั้งที่คุณเปิดเทอร์มินัลระบบของคุณจะเปิดพรอมต์เริ่มต้น คุณต้องเปิดใช้งานสภาพแวดล้อมที่แพ็กเกจของคุณอยู่และแจ้งให้เปลี่ยนเป็น (fenics) ฉันหวังว่านี่จะช่วยได้ ขอบคุณเช่นเดียวกับทุกคนที่ช่วยเหลือ ชุมชนนี้เยี่ยมมาก

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