1.miniconda3簡介
通過安裝 Miniconda3,用戶可以方便地創(chuàng)建自己的 Python 開發(fā)環(huán)境,而無需一次性安裝大量不必要的軟件包。同時,通過 Conda 包管理器,用戶可以輕松地安裝、更新和管理 Python 包及其依賴項。
下載頁面地址:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/?C=M&O=D
2.miniconda3下載
Windows安裝程序:https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-Windows-x86_64.exe
3.miniconda3安裝
運行exe安裝程序,選擇Next,選擇 I Agree?
?
彈出UAC窗口,選擇是
然后選擇安裝路徑:D:\miniconda3?,不建議安裝到C盤
?
點擊 Install?,等待安裝完成
?
4.添加環(huán)境變量
win + r,輸入sysdm.cpl,高級,環(huán)境變量,系統(tǒng)變量,編輯 Path? 變量
?
新建,輸入 D:\miniconda3\condabin?,選擇確定
?
5.驗證安裝
win + r,輸入cmd,打開cmd終端,輸入如下命令
conda -V
顯示conda版本,說明配置成功
?
編輯conda配置文件.condarc?,在cmd中輸入如下命令,使用記事本打開:
notepad %USERPROFILE%\.condarc
輸入如下內(nèi)容:
channels:
- defaults
show_channel_urls: true
channel_alias: https://mirrors.tuna.tsinghua.edu.cn/anaconda
default_channels:
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/main
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/r
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/pro
- https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/msys2
custom_channels:
conda-forge: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
msys2: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
bioconda: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
menpo: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
pytorch: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
simpleitk: https://mirrors.tuna.tsinghua.edu.cn/anaconda/cloud
保存退出。
?
conda env list
安裝miniconda后,默認存在名為base的虛擬環(huán)境
conda activate base
注意:進入虛擬環(huán)境后,命令提示符前會顯示 (虛擬環(huán)境名稱)?
C:\Users\test> conda activate base
(base) C:\Users\test>
?
conda deactivate
這里以創(chuàng)建python3.9版本虛擬環(huán)境為例,執(zhí)行如下命令:
conda create -n py39 python=3.9
?
等待安裝完成,顯示如下:
?
# 列出創(chuàng)建的虛擬環(huán)境
conda env list
# 進入py39虛擬環(huán)境
conda activate py39
conda deactivate
# 進入base虛擬環(huán)境
conda activate base
conda deactivate
?
當(dāng)我們有使用不同python版本的需求時,我們只需要按照如下步驟操作即可:
十分方便且優(yōu)雅?。。?/span>
Python?官網(wǎng)下載安裝程序進行安裝,這里以當(dāng)前最新版本Python為例
https://www.python.org/ftp/python/
1.進入Python官網(wǎng)下載頁面
https://www.python.org/downloads/
?
2.點擊Download按鈕進行下載
下載后文件名為:python-3.x.x-amd64.exe?
3.安裝Python
運行剛剛下載的exe安裝程序,彈出安裝頁面
?
選擇 Customize installation?:自定義安裝 pip?、IDLE? 等
?
選擇Next,修改安裝路徑為:D:\python3.12?
?
注意:
1.不要使用默認安裝路徑!??! 2.路徑不要過長,越簡單越好!?。?3.路徑中不要有中文?。。?/span>
路徑示例:
4.點擊 Install? 等待安裝完成,安裝完成后驗證安裝是否成功
win + r 快捷鍵,輸入cmd,回車
python -V
pip -V
輸出類似如下顯示Python版本信息,說明安裝成功
?
注意:這里顯示的是我的Python版本信息,你的跟我的不一樣
編程的一個小麻煩是Microsoft Windows在文件夾名稱之間使用反斜杠字符,而幾乎所有其他計算機都使用正斜杠:
Windows filenames: C:\some_folder\some_file.txt Most other operating systems: /some_folder/some_file.txt
這是1980年代早期的計算機歷史事故。MS-DOS的第一個版本使用正斜杠字符指定命令行選項。當(dāng)Microsoft在MS-DOS 2.0中添加對文件夾的支持時,正斜杠字符已被占用,因此他們使用反斜杠代替。三十五年后,我們?nèi)匀粓猿诌@種不相容性。
如果您希望Python代碼可以在Windows和Mac / Linux上運行,則需要處理這些特定于平臺的問題。幸運的是,Python 3有一個名為pathlib的新模塊,可以輕松處理文件。
讓我們快速瀏覽處理文件名路徑的不同方法,看看pathlib如何讓您的生活更美好!
假設(shè)您有一個數(shù)據(jù)文件夾,其中包含您要在Python程序中打開的文件:
這是用Python編寫代碼的錯誤方法:
data_folder="source_data/text_files/" file_to_open=data_folder + "raw_data.txt" f=open(file_to_open) print(f.read())
請注意,由于我在Mac上,因此我使用Unix式正斜杠硬編碼路徑。這將使Windows用戶生氣。
從技術(shù)上講,這段代碼仍然可以在Windows上運行,因為Python有一個hack,當(dāng)你在Windows上調(diào)用open()時它會識別出任何一種斜杠。但即便如此,你也不應(yīng)該依賴它。如果在錯誤的操作系統(tǒng)上使用錯誤的斜杠,并非所有Python庫都能正常工作 - 特別是如果它們與外部程序或庫接口。
Python對混合斜杠類型的支持是一種僅限Windows,它不能反向運行。在代碼中使用反斜杠在Mac上完全失敗:
data_folder="source_data\text_files\"
file_to_open=data_folder + "raw_data.txt"
f=open(file_to_open)
print(f.read())
# On a Mac, this code will throw an exception:
# FileNotFoundError: [Errno 2] No such file or directory: 'source_data\text_files\raw_data.txt'
出于所有這些原因以及更多原因,使用硬編碼路徑字符串編寫代碼會讓其他程序員懷疑地看著你。一般來說,你應(yīng)該盡量避免它。
Python的os.path模塊有許多工具可用于解決這些特定于操作系統(tǒng)的文件系統(tǒng)問題。
使用適合當(dāng)前操作系統(tǒng)的斜杠構(gòu)建路徑字符串:
import os.path data_folder=os.path.join("source_data", "text_files") file_to_open=os.path.join(data_folder, "raw_data.txt") f=open(file_to_open) print(f.read())
此代碼可在Windows或Mac上完美運行。問題是使用起來很痛苦。寫出os.path.join()并將路徑的每個部分作為單獨的字符串傳遞是冗長且不直觀的。
由于os.path模塊中的大多數(shù)函數(shù)同樣令人討厭,因此開發(fā)人員通常會“忘記”使用它們,即使它們知道更好。這導(dǎo)致了許多跨平臺的錯誤和憤怒的用戶。
Python 3.4引入了一個新的標準庫來處理名為pathlib的文件和路徑- 它非常棒!
要使用它,只需使用正斜杠將路徑或文件名傳遞給新的Path()對象,然后處理其余的:
from pathlib import Path data_folder=Path("source_data/text_files/") file_to_open=data_folder / "raw_data.txt" f=open(file_to_open) print(f.read())
請注意兩件事:
如果這就是所有pathlib所做的那樣,那將是Python的一個很好的補充 - 但它確實做得更多!
例如,我們可以讀取文本文件的內(nèi)容,而無需打開和關(guān)閉文件:
from pathlib import Path data_folder=Path("source_data/text_files/") file_to_open=data_folder / "raw_data.txt" print(file_to_open.read_text())
提示:前面的例子都是錯誤的,因為打開的文件從未關(guān)閉過。這種語法完全避免了這個bug。
實際上,pathlib使大多數(shù)標準文件操作變得簡單快捷:
from pathlib import Path filename=Path("source_data/text_files/raw_data.txt") print(filename.name) # prints "raw_data.txt" print(filename.suffix) # prints "txt" print(filename.stem) # prints "raw_data" if not filename.exists(): print("Oops, file doesn't exist!") else: print("Yay, the file exists!")
您甚至可以使用pathlib將Unix路徑顯式轉(zhuǎn)換為Windows格式的路徑:
from pathlib import Path, PureWindowsPath filename=Path("source_data/text_files/raw_data.txt") # Convert path to Windows format path_on_windows=PureWindowsPath(filename) print(path_on_windows) # prints "source_data\text_files\raw_data.txt"
如果您真的想安全地在代碼中使用反斜杠,可以將路徑聲明為Windows格式,并且pathlib可以將其轉(zhuǎn)換為在當(dāng)前操作系統(tǒng)上工作:
from pathlib import Path, PureWindowsPath # I've explicitly declared my path as being in Windows format, so I can use forward slashes in it. filename=PureWindowsPath("source_data\\text_files\\raw_data.txt") # Convert path to the right format for the current operating system correct_path=Path(filename) print(correct_path) # prints "source_data/text_files/raw_data.txt" on Mac and Linux # prints "source_data\text_files\raw_data.txt" on Windows
如果你想更高級一些,你甚至可以使用pathlib來解決相關(guān)文件路徑,解析網(wǎng)絡(luò)共享路徑和生成file://urls。這是一個示例,它將在您的Web瀏覽器中打開一個本地文件,只需兩行代碼:
from pathlib import Path import webbrowser filename=Path("source_data/text_files/raw_data.txt") webbrowser.open(filename.absolute().as_uri())
這只是pathlib的一個小峰值。它是許多不同文件相關(guān)功能的絕佳替代品,這些功能過去分散在不同的Python模塊中??纯窗?!
翻譯自:https://medium.com/@ageitgey/python-3-quick-tip-the-easy-way-to-deal-with-file-paths-on-windows-mac-and-linux-11a072b58d5f