ฉันติดตั้ง Python 2.7.11 บนหนึ่งในสถานี LAB ของฉัน ฉันต้องการอัพเกรด Python เป็นอย่างน้อย 3.5
ฉันควรทำอย่างไร? ฉันควรจะถอนการติดตั้ง 2.7.11 ทั้งหมดและติดตั้งใหม่หรือไม่? มีวิธีอัพเดทไหม การอัปเดตเป็นความคิดที่ดีหรือไม่?
ฉันติดตั้ง Python 2.7.11 บนหนึ่งในสถานี LAB ของฉัน ฉันต้องการอัพเกรด Python เป็นอย่างน้อย 3.5
ฉันควรทำอย่างไร? ฉันควรจะถอนการติดตั้ง 2.7.11 ทั้งหมดและติดตั้งใหม่หรือไม่? มีวิธีอัพเดทไหม การอัปเดตเป็นความคิดที่ดีหรือไม่?
คำตอบ:
Python เวอร์ชันรองทุกเวอร์ชันซึ่งเป็นเวอร์ชัน 3.x และ 2.x จะติดตั้งเคียงข้างกันกับเวอร์ชันอื่น ๆ บนคอมพิวเตอร์ของคุณ เฉพาะเวอร์ชันแพตช์เท่านั้นที่จะอัปเกรดการติดตั้งที่มีอยู่
ดังนั้นหากคุณต้องการเก็บ Python 2.7 ที่ติดตั้งไว้รอบ ๆ ให้ปล่อยและติดตั้งเวอร์ชันใหม่โดยใช้โปรแกรมติดตั้ง หากคุณต้องการกำจัด Python 2.7 คุณสามารถถอนการติดตั้งก่อนหรือหลังการติดตั้งเวอร์ชันที่ใหม่กว่าได้ - ไม่มีความแตกต่างกับสิ่งนี้
การติดตั้ง Python 3 ปัจจุบันมาพร้อมกับpy.exe
ตัวเรียกใช้งานซึ่งโดยค่าเริ่มต้นจะติดตั้งลงในไดเร็กทอรีระบบ สิ่งนี้ทำให้พร้อมใช้งานจาก PATH ดังนั้นคุณสามารถเรียกใช้โดยอัตโนมัติจากเชลล์ใดก็ได้เพียงแค่ใช้py
แทนpython
คำสั่ง เพื่อหลีกเลี่ยงไม่ให้คุณต้องติดตั้ง Python ปัจจุบันลงใน PATH ด้วยตัวเอง ด้วยวิธีนี้คุณสามารถติดตั้ง Python หลาย ๆ ตัวเคียงข้างกันได้อย่างง่ายดายโดยที่พวกมันไม่รบกวนกัน เมื่อทำงานให้ใช้py script.py
แทนpython script.py
การใช้ตัวเรียกใช้งาน คุณยังสามารถระบุเวอร์ชันโดยใช้ตัวอย่างpy -3
หรือpy -3.6
เพื่อเปิดใช้เวอร์ชันเฉพาะมิฉะนั้นตัวเรียกใช้งานจะใช้ค่าเริ่มต้นปัจจุบัน (ซึ่งโดยปกติจะเป็น 3.x ล่าสุด)
เมื่อใช้ตัวเรียกใช้งานคุณยังสามารถเรียกใช้สคริปต์ Python 2 ได้ (ซึ่งมักจะไม่เข้ากันกับไวยากรณ์ของ Python 3) หากคุณตัดสินใจที่จะคงการติดตั้ง Python 2.7 ไว้ เพียงแค่ใช้py -2 script.py
เพื่อเปิดสคริปต์
สำหรับแพ็คเกจ PyPI การติดตั้ง Python ทุกครั้งจะมาพร้อมกับโฟลเดอร์ของตัวเองที่ติดตั้งโมดูลไว้ ดังนั้นหากคุณติดตั้งเวอร์ชันใหม่และคุณต้องการใช้โมดูลที่คุณติดตั้งไว้สำหรับเวอร์ชันก่อนหน้าคุณจะต้องติดตั้งก่อนสำหรับเวอร์ชันใหม่ รุ่นปัจจุบันของการติดตั้งยังมีให้คุณติดตั้งpip
; มันถูกเปิดใช้งานโดยค่าเริ่มต้นดังนั้นคุณจึงมีpip
สำหรับการติดตั้งทุกครั้ง เว้นแต่คุณจะเพิ่มการติดตั้ง Python ลงใน PATH อย่างชัดเจนคุณไม่สามารถใช้งานpip
ได้ โชคดีที่คุณยังสามารถเพียงแค่ใช้py.exe
ตัวเปิดสำหรับการนี้: วิ่งpy -m pip
pip
ดังนั้นสำหรับตัวอย่างเช่นการติดตั้งซุปสวยหลาม 3.6 py -3.6 -m pip install beautifulsoup4
คุณสามารถเรียกใช้
py -3.7-64
หรือpy -3.7-32
py
เป็นตัวเปิดหลามสำหรับ Windows หรือดูPEP 397ที่กำหนด ไม่ได้รับการติดตั้งสำหรับ Linux / Mac
หากคุณกำลังอัปเกรดเวอร์ชัน Python 3.xy เป็น 3.xz (แพทช์) เพียงไปที่หน้าดาวน์โหลด Pythonเพื่อรับเวอร์ชันล่าสุดและเริ่มการติดตั้ง เนื่องจากคุณได้ติดตั้ง Python ไว้แล้วในโปรแกรมติดตั้งเครื่องของคุณจะแจ้งให้คุณ "อัปเกรดทันที" คลิกที่ปุ่มนั้นและจะแทนที่เวอร์ชันที่มีอยู่ด้วยเวอร์ชันใหม่ คุณจะต้องรีสตาร์ทคอมพิวเตอร์หลังการติดตั้ง
หากคุณกำลังอัปเกรดจาก 3.x เป็น 3.y (เล็กน้อย) คุณจะได้รับข้อความ "ติดตั้งทันที" ในกรณีนี้คุณไม่ได้อัปเกรด แต่คุณกำลังติดตั้ง Python เวอร์ชันใหม่ คุณสามารถติดตั้งได้มากกว่าหนึ่งเวอร์ชันในเครื่องของคุณ พวกเขาจะอยู่ในไดเรกทอรีที่แตกต่างกัน เมื่อคุณมี Python มากกว่าหนึ่งเวอร์ชันในเครื่องของคุณคุณจะต้องใช้py lanucherเพื่อเปิด Python เวอร์ชันเฉพาะ
ตัวอย่างเช่น:
py -3.7
หรือ
py -3.8
ตรวจสอบให้แน่ใจว่าคุณได้ติดตั้งpy launcherไว้ในเครื่องของคุณ จะถูกติดตั้งโดยอัตโนมัติหากคุณใช้การตั้งค่าเริ่มต้นของโปรแกรมติดตั้ง windows คุณสามารถตรวจสอบได้ตลอดเวลาหากคุณคลิกที่ลิงก์ "ปรับแต่งการติดตั้ง" บนหน้าต่างการติดตั้ง
หากคุณมี Python หลายเวอร์ชันติดตั้งไว้ในเครื่องของคุณและคุณมีโปรเจ็กต์ที่ใช้ Python เวอร์ชันก่อนหน้าโดยใช้สภาพแวดล้อมเสมือนเช่น (venv) คุณสามารถอัพเกรด Python ได้ใน venv โดยใช้:
python -m venv - อัปเกรด "เส้นทางสภาพแวดล้อมเสมือนของคุณ"
ตัวอย่างเช่นฉันมี Python 3.7 ในสภาพแวดล้อมเสมือน. /venv ของฉันและฉันต้องการอัพเกรด venv เป็น Python 3.8 ฉันจะทำตาม
python -m venv - อัปเกรด ./venv
สมมติว่าคุณมี Python 2.7.16:
C:\Windows\system32>python --version
python2 2.7.16
... และคุณต้องการอัปเกรดเป็น 3.xy เวอร์ชัน (ปัจจุบัน) มีวิธีง่ายๆในการติดตั้ง Python 3.xy แบบขนานโดยใช้เครื่องมือจัดการแพ็คเกจ Windows
ตอนนี้ Windows สมัยใหม่มีการจัดการแพคเกจเช่นเดียวกับ Debian Linux ที่มี apt-get และ RedHat มี dnf: เราสามารถทำให้มันทำงานให้เราได้! มันเรียกว่าchocolatey
Chocolatey เป็นเครื่องมือบรรทัดคำสั่งแบบสคริปต์ที่ใช้. NET 4.0 และตัวจัดการแพคเกจ nuget ที่อบไว้ใน Visual Studio
หากคุณต้องการเรียนรู้เกี่ยวกับ Chocolatey และเหตุใดจึงควรใช้ซึ่งบางส่วนที่อ่านอยู่นี้อาจพบว่ามีประโยชน์อย่างยิ่งโปรดไปที่https://chocolatey.org/docs/why
ที่จะได้รับแพคเกจผู้จัดการ chocolatey คุณทำตามขั้นตอนที่อธิบายไว้ในhttps://chocolatey.org/docs/installation#installing-chocolatey ,
ฉันจะสรุปให้คุณที่นี่ โดยทั่วไปมีสองตัวเลือก: ใช้พรอมต์ cmd หรือใช้พรอมต์ PowerShell
เรียกใช้พรอมต์คำสั่งการดูแลระบบ ใน Windows 10 ให้ดำเนินการดังนี้:
หากคุณไม่ได้มีสิทธิ์ของผู้ดูแลระบบให้ไปที่เว็บไซต์ chocolatey คุณอาจไม่โชคดีอย่างสมบูรณ์และสามารถทำการติดตั้งในพื้นที่ได้อย่าง จำกัด แต่ฉันจะไม่กล่าวถึงตรงนี้
@"%SystemRoot%\System32\WindowsPowerShell\v1.0\powershell.exe" -NoProfile -InputFormat None -ExecutionPolicy Bypass -Command "iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))" && SET "PATH=%PATH%;%ALLUSERSPROFILE%\chocolatey\bin"
Chocolatey จะดาวน์โหลดและติดตั้งให้คุณดังนี้:
Getting latest version of the Chocolatey package for download.
Getting Chocolatey from https://chocolatey.org/api/v2/package/chocolatey/0.10.11.
Downloading 7-Zip commandline tool prior to extraction.
Extracting C:\Users\blahblahblah\AppData\Local\Temp\chocolatey\chocInstall\chocolatey.zip to C:\Users\blahblahblah\AppData\Local\Temp\chocolatey\chocInstall...
Installing chocolatey on this machine
Creating ChocolateyInstall as an environment variable (targeting 'Machine')
Setting ChocolateyInstall to 'C:\ProgramData\chocolatey'
WARNING: It's very likely you will need to close and reopen your shell
before you can use choco.
Restricting write permissions to Administrators
We are setting up the Chocolatey package repository.
The packages themselves go to 'C:\ProgramData\chocolatey\lib'
(i.e. C:\ProgramData\chocolatey\lib\yourPackageName).
A shim file for the command line goes to 'C:\ProgramData\chocolatey\bin'
and points to an executable in 'C:\ProgramData\chocolatey\lib\yourPackageName'.
Creating Chocolatey folders if they do not already exist.
WARNING: You can safely ignore errors related to missing log files when
upgrading from a version of Chocolatey less than 0.9.9.
'Batch file could not be found' is also safe to ignore.
'The system cannot find the file specified' - also safe.
chocolatey.nupkg file not installed in lib.
Attempting to locate it from bootstrapper.
PATH environment variable does not have C:\ProgramData\chocolatey\bin in it. Adding...
WARNING: Not setting tab completion: Profile file does not exist at 'C:\Users\blahblahblah\Documents\WindowsPowerShell\Microsoft.PowerShell_profile.ps1'.
Chocolatey (choco.exe) is now ready.
You can call choco from anywhere, command line or powershell by typing choco.
Run choco /? for a list of functions.
You may need to shut down and restart powershell and/or consoles
first prior to using choco.
Ensuring chocolatey commands are on the path
Ensuring chocolatey.nupkg is in the lib folder
ทั้งสองออกจาก CMD พรอมต์หรือพิมพ์คำสั่งต่อไปนี้เพื่อโหลดตัวแปรสภาพแวดล้อม:
refreshenv
หากคุณต้องการ PowerShell กับ cmd prompt คุณสามารถทำได้โดยตรงจากที่นั่นอย่างไรก็ตามคุณจะต้องบอกให้ PowerShell ทำงานด้วยนโยบายการดำเนินการสคริปต์ที่เหมาะสมเพื่อให้มันทำงานได้ ใน Windows 10 วิธีที่ง่ายที่สุดที่ฉันพบคือพิมพ์สิ่งต่อไปนี้ลงในแถบค้นหา Cortana ถัดจากปุ่ม Windows:
PowerShell.exe
จากนั้นคลิกขวาที่ตัวเลือก 'Best Match' ในเมนูที่ปรากฏขึ้นและเลือก 'Run as Administrator'
ตอนนี้คุณอยู่ใน PowerShell แล้วหวังว่าจะทำงานด้วยสิทธิ์ของผู้ดูแลระบบดำเนินการต่อไปนี้เพื่อติดตั้ง Chocolatey:
Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://chocolatey.org/install.ps1'))
PowerShell จะดาวน์โหลด Chocolatey ให้คุณและเริ่มการติดตั้ง ใช้เวลาเพียงไม่กี่อึดใจ ดูเหมือนว่าการติดตั้ง CMD อาจบันทึกข้อความสีแฟนซี
ทั้งสองออกจาก PowerShell หรือพิมพ์คำสั่งต่อไปนี้เพื่อโหลดตัวแปรสภาพแวดล้อม:
refreshenv
คำสั่ง choco จะเหมือนกันไม่ว่าคุณจะใช้ PowerShell หรือพรอมต์ cmd เปิดตัวรายการโปรดของคุณโดยใช้คำแนะนำด้านบน ฉันจะใช้พรอมต์ cmd ของผู้ดูแลระบบ:
C:\WINDOWS\system32>choco upgrade python -y
โดยพื้นฐานแล้ว Chocolatey จะบอกคุณว่า "เฮ้ไม่ได้ติดตั้ง Python" เนื่องจากคุณมาจาก 2.7.x และถือว่าเวอร์ชัน 2.7 แยกกันโดยสิ้นเชิง มันเป็นเพียงจะให้คุณรุ่นล่าสุด, 3.xy (ขณะที่เขียนนี้ 3.7.2 แต่ที่จะเปลี่ยนในไม่กี่เดือน):
Chocolatey v0.10.11
Upgrading the following packages:
python
By upgrading you accept licenses for the packages.
python is not installed. Installing...
python3 v3.x.y [Approved]
python3 package files upgrade completed. Performing other installation steps.
Installing 64-bit python3...
python3 has been installed.
Installed to: 'C:\Python37'
python3 can be automatically uninstalled.
Environment Vars (like PATH) have changed. Close/reopen your shell to
see the changes (or in powershell/cmd.exe just type `refreshenv`).
The upgrade of python3 was successful.
Software installed as 'exe', install location is likely default.
python v3.x.y [Approved]
python package files upgrade completed. Performing other installation steps.
The upgrade of python was successful.
Software install location not explicitly set, could be in package or
default install location if installer.
Chocolatey upgraded 2/2 packages.
See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).
ทั้งสองออกจาก cmd / การ Powershell รวดเร็วและกลับเข้ามาหรือใช้ refreshenv แล้วพิมพ์ PY --version
C:\Windows\System32>refreshenv
Refreshing environment variables from registry for cmd.exe. Please wait...Finished..
C:\Windows\system32>py --version
Python 3.7.2
โปรดทราบว่าการติดตั้ง Python ล่าสุดจะเข้ามาแทนที่เมื่อคุณพิมพ์ Python ที่บรรทัดคำสั่ง คุณสามารถเรียกใช้เวอร์ชันใดก็ได้โดยใช้คำสั่งต่อไปนี้:
py -2
Python 2.7.16 (v2.7.16:413a49145e, Mar 4 2019, 01:37:19) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> exit()
C:\>py -3
Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>>exit()
C:\>
จากที่นี่ฉันขอแนะนำให้คุณใช้ยูทิลิตี้Python pipเพื่อติดตั้งแพ็คเกจที่คุณต้องการ ตัวอย่างเช่นสมมติว่าคุณต้องการติดตั้ง Flask คำสั่งด้านล่างอัพเกรด pip ก่อนจากนั้นติดตั้ง Flask
C:\>py -3 -m pip install --upgrade pip
Collecting pip
Downloading https://files.pythonhosted.org/packages/d8/f3/413bab4ff08e1fc4828dfc59996d721917df8e8583ea85385d51125dceff/pip-19.0.3-py2.py3-none-any.whl (1.4MB)
100% |████████████████████████████████| 1.4MB 1.6MB/s
Installing collected packages: pip
Found existing installation: pip 18.1
Uninstalling pip-18.1:
Successfully uninstalled pip-18.1
Successfully installed pip-19.0.3
c:\>py -3 -m pip install Flask
... จะทำเคล็ดลับ. มีความสุข Pythoning!
Python 2.x และ Python 3.x แตกต่างกัน หากคุณต้องการดาวน์โหลด Python 2 เวอร์ชันใหม่กว่าคุณสามารถดาวน์โหลดและติดตั้งเวอร์ชันที่ใหม่กว่าได้
หากคุณต้องการติดตั้ง Python 3 คุณสามารถติดตั้ง Python 3 แยกกันจากนั้นเปลี่ยนเส้นทางสำหรับ Python 2.x เป็น Python 3.x ในแผงควบคุม> รายการแผงควบคุมทั้งหมด> ระบบ> การตั้งค่าระบบขั้นสูง> ตัวแปรสภาพแวดล้อม