入門指南:從環(huán)境搭建到實戰(zhàn)項目全覆蓋)
0. 開篇Python基礎(chǔ)到底該學(xué)什么、怎么學(xué)Python基礎(chǔ)這四個字幾乎是所有自學(xué)編程的人繞不開的第一站。網(wǎng)上搜Python出來的東西五花八門——安裝教程、爬蟲代碼、量化交易策略、轉(zhuǎn)exe工具、語法速查、數(shù)據(jù)分析可視化還有一大票讓人眼花繚亂的源碼大全。說實話信息越多新手越容易懵我到底該從哪開始裝完P(guān)ython之后該干什么為什么別人的代碼我能跑通自己一寫就報錯我玩Python也有好多年了期間幫不少人解決過入門階段的問題。這篇文章不打算給你堆一堆碎片化的知識點而是站在一個過來人的角度把“Python基礎(chǔ)”這件事拆開揉碎講清楚學(xué)習(xí)路線、環(huán)境搭建、核心語法、常用庫以及新手一定會踩的那些坑。適合完全零基礎(chǔ)的小白也適合那些已經(jīng)零零散散學(xué)過一點、但總覺得不成體系的讀者??赐曛竽阒辽倌芨闱宄患翽ython基礎(chǔ)不只是一個語法清單而是一套能讓你獨立寫腳本、跑數(shù)據(jù)、做小工具的最小知識閉環(huán)。1. 內(nèi)容整體設(shè)計與思路拆解1.1 Python基礎(chǔ)的本質(zhì)是一套“最小閉環(huán)”很多初學(xué)者有個誤區(qū)覺得Python基礎(chǔ)就是背語法。其實不是。語法只是工具真正的Python基礎(chǔ)是讓你能用這套工具完成一個完整的小任務(wù)。什么叫完整就是你知道代碼為什么要這么寫、運行之后為什么是這個結(jié)果、報錯了怎么排查。這三個“為什么”串起來才叫真正入門。我習(xí)慣把Python基礎(chǔ)拆成五個模塊環(huán)境、語法、函數(shù)與模塊、文件與數(shù)據(jù)、常用第三方庫。環(huán)境解決“在哪寫”語法解決“怎么寫”函數(shù)與模塊解決“怎么組織”文件與數(shù)據(jù)解決“怎么落地”第三方庫解決“怎么偷懶”。這五個模塊不是并列關(guān)系而是遞進(jìn)關(guān)系。你把前三個搞定就能看懂絕大多數(shù)的入門教程加上后兩個就能獨立做點實用的小工具比如批量改文件名、爬取網(wǎng)頁信息、分析Excel數(shù)據(jù)。為什么我特別強(qiáng)調(diào)這個遞進(jìn)關(guān)系因為我見過太多人卡在中間。有人裝好Python就不知道下一步了有人背了一個星期語法還是不會寫代碼有人跟教程爬蟲跑通了但稍微改個網(wǎng)站就完全抓瞎。這些問題歸根結(jié)底都是因為知識是散的沒有形成閉環(huán)。這篇文章就是幫你把散的片段串起來。1.2 為什么選擇“先跑通、再理解”的學(xué)習(xí)路徑官方教程和很多書籍喜歡從“什么是變量”“什么是數(shù)據(jù)類型”講起邏輯嚴(yán)謹(jǐn)?shù)浅裢?。我的建議正好反過來先讓代碼跑起來哪怕是抄一段愛心代碼、畫一個簡單圖形先看到輸出結(jié)果再回頭理解每一行在干嘛。這個思路在認(rèn)知科學(xué)上是有依據(jù)的。人類學(xué)習(xí)新技能先建立“體感”比先掌握“理論”效率更高。就好比學(xué)開車你先坐進(jìn)駕駛室踩一腳油門對“車會往前走”有了體感再學(xué)離合、換擋、看后視鏡這些細(xì)節(jié)就不容易暈。寫代碼也一樣先跑通一段代碼看到屏幕上輸出“Hello World”或者畫出一個圖案你對“代碼如何被執(zhí)行”就有了直覺。有了這個直覺后面學(xué)任何語法細(xì)節(jié)都會覺得“哦原來是為這個服務(wù)的”。所以我建議你的Python基礎(chǔ)學(xué)習(xí)路徑是這樣花半小時把環(huán)境裝好花一小時把下面第三節(jié)的核心語法過一遍然后立刻找一個小項目做比如寫一個“李白打酒”的算法題或者寫一個從網(wǎng)頁抓天氣信息的爬蟲。遇到不懂的語法再回來查。這個“項目驅(qū)動及時查漏”的模式比從頭到尾啃教材快得多。2. 環(huán)境搭建與工具鏈配置Python基礎(chǔ)的地基2.1 安裝Python時的三個關(guān)鍵選擇先說安裝。很多新手在“python安裝”這一步就會遇到各種稀奇古怪的問題其實絕大多數(shù)坑都是可以提前避開的。第一版本選擇。Python目前有2.x和3.x兩個大版本2.x已經(jīng)停止維護(hù)多年新學(xué)的人直接無視它。3.x版本里選哪個小版本我的建議是選當(dāng)前最新的穩(wěn)定版最低也要用3.8以上。為什么因為很多第三方庫和工具鏈已經(jīng)放棄對舊版本的支持了你裝個3.6后面裝numpy、pandas可能官方都不給你編譯好的安裝包硬要裝又得折騰編譯環(huán)境純屬浪費時間。第二安裝路徑。Windows下安裝時安裝界面第一頁最下方有個“Add Python to PATH”的復(fù)選框一定要勾上。這個勾的作用是讓系統(tǒng)全局都能識別python命令不勾的話你在命令行里敲python會提示“不是內(nèi)部或外部命令”。我見過太多人栽在這一步上而且很多人勾了還是不行那大概率是裝的時候用了自定義路徑里面帶了中文或空格導(dǎo)致環(huán)境變量解析出問題。最穩(wěn)妥的做法就是保持默認(rèn)路徑安裝別自作聰明去改。第三環(huán)境變量。很多時候我們需要在同一個電腦上裝多個Python版本比如一個給日常開發(fā)一個給某個特定項目。這時候手動配環(huán)境變量就比安裝器自動配更可控。具體做法是右鍵“此電腦”-“屬性”-“高級系統(tǒng)設(shè)置”-“環(huán)境變量”在“Path”里新增兩個路徑一個是Python安裝目錄本身另一個是該目錄下的Scripts文件夾。這個Scripts文件夾很重要因為后面用pip安裝的很多命令行工具比如將Python打包成exe的PyInstaller都會放到這里。2.2 用虛擬環(huán)境隔離項目依賴而不是把一切都裝在全局這項建議是我希望自己當(dāng)年入門時有人早點兒告訴我的從一開始就學(xué)會用虛擬環(huán)境別把所有第三方庫都裝到全局。虛擬環(huán)境的作用是給每個項目一個獨立的Python運行空間你在A項目里裝requests的1.0版本完全不影響B(tài)項目里用requests的2.0版本。具體操作有兩種主流方式。老牌的是virtualenv新建一個環(huán)境用virtualenv venv激活環(huán)境在Windows下是venv\Scripts\activate在Linux或macOS下是source venv/bin/activate。新版Python自帶venv模塊用法差不多python -m venv venv。激活之后你會注意到命令行前面多了個(venv)前綴說明你已經(jīng)在虛擬環(huán)境里了這時候pip install裝的所有包都只屬于這個項目。為什么我這么強(qiáng)調(diào)這一步因為幾乎所有“我照著教程做怎么報ModuleNotFoundError”的問題根源都是環(huán)境沖突。比如教程作者用的是python3.9你用的是python3.6某個依賴包不支持你的版本或者你的全局環(huán)境里早有一個舊版本的庫把新版本覆蓋了。虛擬環(huán)境把這些問題直接歸零。實話實說養(yǎng)成這個習(xí)慣能讓你的Python之路少走至少兩個月的彎路。2.3 IDE選擇VSCode還是PyCharm看完不再糾結(jié)編輯器這塊我推薦新手只用兩個選項VSCode和PyCharm。VSCode勝在輕量、免費、插件生態(tài)豐富。配置Python環(huán)境的步驟其實很簡單先去擴(kuò)展市場裝一個Python插件微軟官方出品然后CtrlShiftP打開命令面板輸入“Python: Select Interpreter”選擇你剛裝好的Python解釋器就可以開始寫了。如果你要跑代碼只需要打開一個.py文件點右上角的三角形運行按鈕或者直接在終端里敲python 文件名.py。PyCharm則更適合做稍微大一點的項目它的項目結(jié)構(gòu)管理、調(diào)試器、代碼補(bǔ)全和Git集成做得更成熟。缺點是對低配置電腦不太友好啟動慢內(nèi)存占用高。我的建議是如果你用的是Windows本且內(nèi)存只有8G老老實實用VSCode如果內(nèi)存16G以上且你打算以后走開發(fā)這條路那用PyCharm社區(qū)版也完全夠起步。很多人的誤區(qū)是追求“最強(qiáng)大”的工具其實Python基礎(chǔ)階段最重要的是能快速看到代碼運行結(jié)果減少工具本身帶來的心智負(fù)擔(dān)。選哪個不重要重要的是別把時間花在折騰編輯器主題和插件上。等到你寫了三個月代碼自然就知道自己需要什么了。3. 核心語法基礎(chǔ)與實操要點3.1 變量與數(shù)據(jù)類型一切都在圍繞“對象”在轉(zhuǎn)Python的變量聲明非常簡單不用寫類型直接x 5就完事。這個“不用寫類型”讓新手覺得很輕松但也帶來一個隱患你不清楚這背后到底發(fā)生了什么。在Python里一切數(shù)據(jù)都是對象。你寫x 5實際上是創(chuàng)建了一個值為5的整數(shù)對象然后讓變量名x指向它。如果你寫y x并沒有復(fù)制一個新的整數(shù)對象而是讓y也指向同一個對象。這就是為什么在列表操作中會出現(xiàn)“改了a但b也變了”的問題。Python的基本數(shù)據(jù)類型就那么幾種整數(shù)int、浮點數(shù)float、字符串str、布爾值bool、列表list、元組tuple、字典dict、集合set。這些類型里面前四個是不可變類型后面四個是可變類型。不可變的意思是你試圖修改它實際上是創(chuàng)建了一個新對象原對象沒變。初學(xué)者最容易在這里翻車的是列表和字典的賦值與拷貝問題。3.2 數(shù)據(jù)類型轉(zhuǎn)換、abs函數(shù)等“高頻小工具”別死記硬背熱搜詞里出現(xiàn)了“python abs函數(shù)”和“python類型轉(zhuǎn)換”這兩個都是非常典型的“高頻小工具”。abs函數(shù)就是取絕對值abs(-5)返回5簡單到不能再簡單。類型轉(zhuǎn)換更基礎(chǔ)int(123)把字符串轉(zhuǎn)成整數(shù)str(123)把整數(shù)轉(zhuǎn)成字符串float(3.14)轉(zhuǎn)成浮點數(shù)list(abc)得到[a,b,c]。這些內(nèi)容單獨看都很簡單但我要說的是一個學(xué)習(xí)方法別試圖一次性記全這些“小工具”因為記不住。更聰明的做法是記住兩點。第一Python有一個內(nèi)置函數(shù)列表官方文檔叫Built-in Functions你用之前去查一下就行。第二很多“折磨人”的報錯都和數(shù)據(jù)類型的隱式轉(zhuǎn)換有關(guān)。比如你用input()讀到的永遠(yuǎn)是字符串你要做加法就必須先int()轉(zhuǎn)換。比如1除以2在Python 3里返回的是0.5而不是0。比如字符串乘以整數(shù)是重復(fù)拼接字符串列表乘以整數(shù)是重復(fù)列表元素。這些細(xì)節(jié)靠背很難記住但用多了自然就刻在腦子里了。3.3 控制流if、for、while的使用邏輯和嵌套技巧控制流是編程邏輯的核心也是很多非科班同學(xué)從“看代碼”到“寫代碼”的一道門檻。if語句的邏輯很簡單條件為真就執(zhí)行某個分支否則執(zhí)行另一個分支。每個條件表達(dá)式都會得到一個布爾值True或者False。for循環(huán)和while循環(huán)的區(qū)別值得多說幾句。for循環(huán)適合遍歷一個已知的序列比如遍歷列表里的每個元素、遍歷1到100的數(shù)字、遍歷字符串里的每個字符。while循環(huán)適合你不知道什么時候會停下來的場景比如寫一個猜數(shù)字游戲用戶沒猜對就一直循環(huán)。很多新手把for和while混著用明明可以用for的偏用while結(jié)果循環(huán)變量忘了遞增形成死循環(huán)。這里分享一個排查經(jīng)驗如果代碼運行后卡住不動、CPU狂轉(zhuǎn)大概率是死循環(huán)了。這時候按CtrlC強(qiáng)制終止程序然后檢查你的while循環(huán)條件是不是永遠(yuǎn)不會變成False。3.4 函數(shù)、文件讀寫、異常處理三個構(gòu)成“可用程序”的拼圖語法學(xué)到一定程度就要開始寫函數(shù)。函數(shù)的本質(zhì)是“把一段邏輯包裝起來給它一個名字方便反復(fù)調(diào)用”。Python定義函數(shù)用def關(guān)鍵字比如def add(a, b): return a b定義函數(shù)時要注意兩點。一是參數(shù)和返回值參數(shù)是函數(shù)的輸入return是函數(shù)的輸出。沒有return的函數(shù)會隱式返回None。二是作用域函數(shù)內(nèi)部定義的變量一般只在函數(shù)內(nèi)部有效想要修改全局變量需要加global關(guān)鍵字但我很少這么干因為設(shè)計良好的代碼通常不需要依賴全局變量。文件讀寫是Python基礎(chǔ)里最容易被忽視但實際上超實用的功能。打開文件用open(文件名, 模式)模式主要有r讀取、w寫入、a追加、b二進(jìn)制。讀寫完后要close但更推薦用with語法它會幫你自動關(guān)閉文件with open(data.txt, r, encodingutf-8) as f: content f.read()異常處理用try/except把可能出錯的代碼放在try塊里出錯后執(zhí)行except塊里的邏輯。這一步看起來不起眼但寫爬蟲和數(shù)據(jù)處理時極其關(guān)鍵。沒有異常處理的程序碰到一個臟數(shù)據(jù)可能就整個崩潰有了異常處理你就能跳過壞數(shù)據(jù)繼續(xù)跑完整個任務(wù)。4. 實用派Python進(jìn)階路徑爬蟲、數(shù)據(jù)分析與界面工具4.1 Python爬蟲入門從requests到BeautifulSoup的完整流程很多同學(xué)學(xué)Python基礎(chǔ)就是為了做爬蟲這個方向確實很能調(diào)動學(xué)習(xí)興趣。爬蟲的本質(zhì)就三步用requests庫向服務(wù)器發(fā)起請求、拿到響應(yīng)的HTML內(nèi)容、用解析庫提取你要的數(shù)據(jù)。聽不懂拿生活類比一下requests就是你在瀏覽器地址欄輸入網(wǎng)址后按回車HTML就是網(wǎng)頁的源代碼解析庫就是幫你從源代碼里精準(zhǔn)找到某一條內(nèi)容的高亮筆。先用pip把依賴裝上pip install requests beautifulsoup4然后一個最基本的爬蟲長這樣import requests from bs4 import BeautifulSoup url https://example.com resp requests.get(url) resp.encoding utf-8 soup BeautifulSoup(resp.text, html.parser) title soup.find(h1).text print(title)這就是完整流程真的沒有那么神秘。不過我要強(qiáng)調(diào)三個坑。第一headers參數(shù)要帶上很多網(wǎng)站會攔截不帶瀏覽器標(biāo)識的請求。第二別拿爬蟲去高頻請求別人網(wǎng)站給自己惹麻煩不說也不道德做學(xué)習(xí)用途的話本地起個測試網(wǎng)頁就行。第三拿到HTML之后一定要先print出來看一眼編碼問題、動態(tài)加載問題都是在這步暴露的。4.2 數(shù)據(jù)分析numpy、pandas和Matplotlib的最小配合數(shù)據(jù)分析也是Python基礎(chǔ)的重要分支。做數(shù)據(jù)分析我建議直接學(xué)這三個庫numpy負(fù)責(zé)數(shù)值計算pandas負(fù)責(zé)表格數(shù)據(jù)處理Matplotlib負(fù)責(zé)畫圖。三者配合基本能覆蓋日常80%的數(shù)據(jù)分析需求。安裝方法很簡單在命令行里運行pip install numpy pandas matplotlib如果安裝時提示缺少什么包或者報一些奇怪的錯誤比較常見的原因是Python版本太舊或者使用了Pypi默認(rèn)源下載過慢。解決辦法是換用國內(nèi)鏡像源比如清華源pip install numpy pandas matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simplepandas的核心數(shù)據(jù)結(jié)構(gòu)叫DataFrame你可以把它理解成一張Excel表格。讀入CSV文件用pd.read_csv(data.csv)篩選數(shù)據(jù)用df[df[列名] 100]分組統(tǒng)計用df.groupby(列名).mean()。熱搜詞里提到了“python tip.groupby()屬于哪個庫”答案就是pandas庫。Matplotlib畫圖最常用的是plt.plot(x, y)畫折線圖、plt.bar(x, y)畫柱狀圖、plt.scatter(x, y)畫散點圖最后plt.show()把圖彈出來。學(xué)數(shù)據(jù)分析有一個很實用的路徑找一份真實數(shù)據(jù)比如天氣記錄、股票歷史行情、電商訂單數(shù)據(jù)然后按照“讀入-清洗-統(tǒng)計-可視化”的順序做一遍。這個過程會逼迫你把文件讀寫、數(shù)據(jù)類型轉(zhuǎn)換、控制流、函數(shù)這些基礎(chǔ)語法全部用一遍比做一百道練習(xí)題都有效。5. 從Python代碼到可分享的程序打包exe與常用開發(fā)工具5.1 用PyInstaller把Python腳本打包成獨立應(yīng)用寫完一個Python腳本想要發(fā)給別人用你會發(fā)現(xiàn)對方電腦上未必裝了Python。這時候就需要把腳本打包成exe文件。PyInstaller是干這個事的首選工具。安裝和基本用法是這樣的pip install pyinstaller pyinstaller -F my_script.py-F參數(shù)表示生成單個exe文件方便分發(fā)。命令運行完之后dist目錄下就會出現(xiàn)my_script.exe。這個exe文件就可以直接拷給Windows用戶使用對方不需要安裝Python。打包過程中有幾個常見問題我得提醒你。第一生成的exe體積很大一個簡單的腳本打包出來就有幾十MB這是正常的因為PyInstaller把Python解釋器和你的依賴庫一起打進(jìn)去了。第二如果腳本里使用了動態(tài)導(dǎo)入或者隱藏導(dǎo)入的模塊打包后可能報ModuleNotFoundError這時候需要額外加--hidden-import參數(shù)。第三如果你的程序用了圖標(biāo)可以用-i icon.ico指定。第四第一次打包的時候殺毒軟件可能會報警因為PyInstaller打包出的程序特征有點像病毒這是誤報但你需要知道這個情況。5.2 必備的Python學(xué)習(xí)和開發(fā)工具清單除了Python解釋器和IDE我建議新手按需使用這些工具pip用于管理第三方庫virtualenv或venv用于環(huán)境隔離Git用于代碼版本管理Jupyter Notebook用于寫數(shù)據(jù)分析代碼它支持分格運行、直接看到圖表輸出我處理數(shù)據(jù)的時候經(jīng)常用它。這些工具不需要一次全學(xué)但最好知道它們的存在和用途免得在社區(qū)看到別人聊的時候一頭霧水。還有一個免費源碼的話題很多初學(xué)者喜歡收藏“免費python源碼大全”總想著下載別人項目來學(xué)。我的看法是源碼可以看但別只收藏不看更別直接復(fù)制粘貼交作業(yè)??丛创a的正確姿勢是挑一個你感興趣的小項目先把它跑起來然后逐行讀代碼弄懂每一行的作用最后嘗試改一兩個功能。按照“讀得懂-改得動-自己寫”的節(jié)奏來源碼才能真正變成你的東西。5.3 遇到“請安裝缺失的包以使用此工作流”怎么辦最近在下載一些開源項目時經(jīng)??吹筋愃啤罢埌惭b缺失的包以使用此工作流。要安裝缺失的節(jié)點請先在你的python環(huán)境中運行pip install -u --pre comfyui-m...”的提示。這種提示通常出現(xiàn)在AI繪畫工具比如ComfyUI或者一些開源工作流項目里本質(zhì)上是缺少依賴包。處理方法是按提示找到對應(yīng)的requirements.txt文件在項目目錄下執(zhí)行pip install -r requirements.txt如果項目給出的是具體包名直接pip install那個包就行。這里有個細(xì)節(jié)值得注意盡量在虛擬環(huán)境里裝這些依賴而不是直接裝進(jìn)全局環(huán)境否則很容易和其他項目的依賴打架?!班盼已b的包挺多的啊怎么報缺包”這種問題幾乎都是因為環(huán)境不對。你先確認(rèn)一下你當(dāng)前用的是不是項目指定的那個Python環(huán)境再確認(rèn)一下依賴有沒有裝全基本就能解決。6. 常見問題與排查技巧實錄6.1 Python命令不生效的排查思路“python不是內(nèi)部或外部命令”和“Python安裝詳細(xì)步驟”經(jīng)常被同時搜到說明很多人在安裝之后遇到了同樣的問題。如果遇到這個情況按順序排查打開命令行輸入python如果提示不存在先重開一個命令行窗口試試——環(huán)境變量修改后需要重新打開才生效。如果重開還是不行去環(huán)境變量設(shè)置里確認(rèn)有沒有你Python的安裝路徑和Scripts路徑。確認(rèn)你的Python安裝目錄里確實有python.exe這個文件。如果沒有說明安裝過程出了問題卸載重裝。如果你的電腦同時裝了好幾個Python版本建議把需要用到的那個版本的路徑順序調(diào)到最前面或者用py -3.9來指定版本運行。6.2 ModuleNotFoundError缺包問題的定位與解決ModuleNotFoundError是新手最常見的報錯之一。比如你明明裝了numpy運行代碼還是提示沒有這個模塊。這時候先別急著重裝包先確認(rèn)你的解釋器是不是對的。在VSCode里點右下角的解釋器版本號看看當(dāng)前選中的是哪個環(huán)境的Python。如果你在命令行里用python命令裝包但VSCode里選的解釋器是另一個比如虛擬環(huán)境里的Python那VSCode自然就import不到你剛裝好的包。解決辦法就一句話在所有場合用同一個Python環(huán)境。裝包用python -m pip install xxx而不是用pip install前者會明確裝到你正在使用的那個python解釋器對應(yīng)的環(huán)境里。6.3 中文亂碼與編碼問題用Python處理中文文件時經(jīng)常會遇到UnicodeDecodeError或者亂碼。這個問題十有八九是編碼格式不統(tǒng)一。Python 3里字符串默認(rèn)是Unicode編碼但讀寫文件時需要指定編碼。打開文件時建議明確寫encodingutf-8讀寫Excel或CSV時也要注意文件的原始編碼。如果遇到GBK編碼的文件就用encodinggbk。一個小經(jīng)驗utf-8和gbk這兩個編碼的切換能解決90%的中文亂碼問題。6.4 安裝包時常見的問題速查表問題現(xiàn)象產(chǎn)生原因解決方案pip install報網(wǎng)絡(luò)超時默認(rèn)源在國外速度慢換清華源或阿里源鏡像pip install提示PermissionError權(quán)限不足Windows下用管理員命令行重試macOS下加--user參數(shù)安裝numpy提示需要編譯工具Python版本太老或平臺無預(yù)編譯包升級Python到3.8盡量使用官網(wǎng)版提示“No module named pip”Python環(huán)境受損或未安裝pip執(zhí)行python -m ensurepip --upgrade裝好了但import報錯環(huán)境不對或安裝了多個Python確認(rèn)解釋器路徑用python -m pip list查看當(dāng)前環(huán)境包列表還有一個小技巧要分享如果你實在排查不出問題不妨把當(dāng)前Python環(huán)境完全卸載再重新安裝一遍。很多所謂的疑難雜癥其實都是環(huán)境太亂導(dǎo)致的。清清爽爽的干凈環(huán)境能省掉一大半問題。6.5 多版本Python的共存管理熱搜詞里有“windows安裝python多個版本”和“卸載python”說明多人在這兩個需求上踩了坑。同一臺電腦裝多個Python版本是完全可以的但需要一些管理技巧。最簡單的做法安裝時給不同版本分別勾選“Add Python to PATH”把它們都裝進(jìn)默認(rèn)路徑下。然后在命令行里用py -3.9和py -3.11來指定版本運行用py -3.9 -m pip install xxx給指定版本裝包。如果你早學(xué)會了虛擬環(huán)境其實多個Python版本的問題也很好解決每個虛擬環(huán)境都可以指定使用哪個Python解釋器創(chuàng)建項目之間天然隔離。卸載Python時要注意先在“設(shè)置-應(yīng)用”里卸載主程序再去環(huán)境變量里刪除對應(yīng)的路徑條目最后檢查一下C:\Users\用戶名\AppData\Local\Programs\Python目錄下有沒有殘留文件有的話手動清掉。卸載干凈再裝新版能避免很多說不清道不明的靈異問題。7. 從基礎(chǔ)到實戰(zhàn)一個小命令搞定版本管理前面聊了不少環(huán)境問題和報錯排查最后再給你一個能立刻用上的小技巧用python -m pip來統(tǒng)一管理包。很多人習(xí)慣直接敲pip install xxx但如果你的電腦里有多個Python環(huán)境你根本不知道pip裝到哪兒去了。而python -m pip明確指定了是哪個Python在干活。同樣的道理運行腳本時你可以用python xxx.py而不是雙擊運行。雙擊運行的缺點是看不到報錯信息程序一閃而過你不知道發(fā)生了什么。在終端里運行則能看到完整的輸出和錯誤堆棧排查問題方便得多。這個小習(xí)慣我推薦給你它比任何工具都更實用。最后再分享一點我的個人體會Python基礎(chǔ)最難的階段不是學(xué)語法而是從“看教程”切換到“自己寫代碼”的那個瞬間??词榻坛滩蝗缬H手寫一個能跑的小程序。你可以找一個最簡單的題目比如“讓用戶輸入兩個數(shù)輸出它們的和”“生成一個九九乘法表”“統(tǒng)計一篇文章里每個單詞出現(xiàn)了幾次”然后關(guān)掉教程獨立完成。做完這三個你對Python基礎(chǔ)的掌握就已經(jīng)超過一大半徘徊在門口的初學(xué)者了。剩下的事情就是帶著問題繼續(xù)往前走遇到什么學(xué)什么這本來就是編程的學(xué)習(xí)常態(tài)。