日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

为什么python代码运行不了_为什么Python代码能运行但是PyCharm给我画红线?

發布時間:2023/12/2 python 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 为什么python代码运行不了_为什么Python代码能运行但是PyCharm给我画红线? 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

PyCharm在遇到模塊找不到時,會使用紅色波浪線提醒開發者。這本來是一個非常好的功能,但卻由于另外一個問題,會給一些Python初學者造成困擾。

這一篇文章,我們講講工作區導致的這個問題。

首先我們創建一個login.py文件,它的內容如下:def login(): print('登錄服務器')

再創建一個 main.py,它的內容如下:from login import login

print('準備登錄服務器')login()

這兩個文件的文件結構如下圖所示:

此時,你在PyCharm中打開main.py,你就會發現紅色的波浪線,如下圖所示。

此時如果使用PyCharm來運行這個main.py文件:

你會發現PyCharm運行程序毫無問題:

所以PyCharm有問題?它胡亂報錯嗎?

實際上不是這樣的。

Python有一個工作區的概念,在默認情況下,當你使用 python xxx.py運行一個.py文件時,工作區就是你運行的這個.py文件所在的文件夾。由于login.py和main.py文件是放在同一個文件夾里面的,所以當你直接運行main.py時,Python能夠正確知道 fromloginimportlogin是指從和main.py在一起的這個login.py文件中導入login函數。所以一切都是正常的。

當時當你使用PyCharm打開一個項目文件夾時,由于還沒有運行這個項目中的某個文件,所以PyCharm會以當前打開的這個項目文件夾為工作區。

在這個例子中,PyCharm會以 代碼練習這個文件夾作為工作區。所以當我在main.py中寫 fromloginimportlogin的時候,PyCharm會從 代碼練習這個文件夾里面去需找login.py文件。顯然,由于login.py在chapter_1文件夾里面,不在 代碼練習這個文件夾里面,所以PyCharm找不到,于是就會畫紅色波浪線。

這種情況特別常見于初學者學習別人代碼的情況。例如一個Python初學者,他會把所有的爬蟲相關代碼都放在名為 爬蟲代碼的文件夾里面,然后他下載了我的一個知乎爬蟲項目,這個項目的代碼是在一個叫做 ZhihuSpider文件夾里面的。此時,他把 ZhihuSpider文件夾放在 爬蟲代碼文件夾里面,再用PyCharm打開 爬蟲代碼文件夾,那么他就會看到 ZhihuSpider項目代碼里面有大量的紅色波浪線。這不是代碼有問題,而是PyCharm自動識別的工作區不正確導致的。

要解決這個問題也非常簡單。打開PyCharm的項目設置,定位到 ProjectStructure,如下圖所示。

點擊紅色箭頭指向的x符號,刪除當前的內容,并添加新的內容,如下圖所示:

把真正的項目文件夾路徑添加進去,如下圖所示:

點擊 OK按鈕,回到PyCharm,發現它已經可以正確找到 login.py文件了。如下圖所示,紅色波浪線消失。

在下一篇文章中,我們會講到由于虛擬環境不一致導致Python代碼能運行,但是PyCharm畫紅色波浪線的情況。

總結

以上是生活随笔為你收集整理的为什么python代码运行不了_为什么Python代码能运行但是PyCharm给我画红线?的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。