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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) >

webstorm里stylus代码报错_发生甚莫事了?我的程序为啥又报错了!

發(fā)布時(shí)間:2025/3/13 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 webstorm里stylus代码报错_发生甚莫事了?我的程序为啥又报错了! 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

點(diǎn)擊上方Python知識(shí)圈,設(shè)為星標(biāo)

回復(fù)100獲取100題PDF

閱讀文本大概需要 6?分鐘

近期精彩文章Python100例(附PDF下載地址)

作者:pk哥

原創(chuàng)公眾號(hào):Python知識(shí)圈

剛才在技術(shù)群里有個(gè)伙伴艾特我,我說(shuō)發(fā)生甚么事了?給我發(fā)了幾張截圖,我一看,哦,原來(lái)是運(yùn)行程序報(bào)錯(cuò)了。我說(shuō)你不會(huì)看報(bào)錯(cuò)信息么,這不好用,他不服氣,我說(shuō)我教你們讀懂報(bào)錯(cuò)信息,這個(gè)有用,這是化勁兒。

言歸正傳,運(yùn)行程序出錯(cuò)或者沒有出現(xiàn)我們想要的結(jié)果,我們每天都會(huì)遇到這樣的問題,遇到問題沒關(guān)系,重要的是我們知道怎么找出問題的根源,然后解決問題。

有報(bào)錯(cuò)信息

運(yùn)行程序,啪,很快啊,控制臺(tái)出現(xiàn)了報(bào)錯(cuò)信息,這時(shí)我們需要讀懂報(bào)錯(cuò)信息,有些伙伴發(fā)到群里的報(bào)錯(cuò)信息很明顯了,可是他卻看不懂。所以 pk哥給大家總結(jié)下常見的報(bào)錯(cuò)場(chǎng)景。

不要怕看報(bào)錯(cuò)信息,常見的報(bào)錯(cuò)就這幾種,記住就行。

首先,我們需要知道常見的報(bào)錯(cuò)關(guān)鍵字。

SyntaxError:語(yǔ)法錯(cuò)誤,代碼形式錯(cuò)誤

AttributeError:屬性錯(cuò)誤,特性引用和賦值失敗時(shí)會(huì)引發(fā)屬性錯(cuò)誤

NameError:試圖訪問的變量名不存在

Exception:所有異常的基類,因?yàn)樗衟ython異常類都是基類Exception的其中一員,異常都是從基類Exception繼承的,并且都在exceptions模塊中定義。

IOError:一般常見于打開不存在文件時(shí)會(huì)引發(fā)IOError錯(cuò)誤,也可以解理為輸出輸入錯(cuò)誤

KeyError:使用了映射中不存在的關(guān)鍵字(鍵)時(shí)引發(fā)的關(guān)鍵字錯(cuò)誤

IndexError:索引錯(cuò)誤,使用的索引不存在,常索引超出序列范圍,什么是索引

TypeError:類型錯(cuò)誤,內(nèi)建操作或是函數(shù)用于在了錯(cuò)誤類型的對(duì)象時(shí)會(huì)引發(fā)類型錯(cuò)誤

ZeroDivisonError:除數(shù)為0,在用除法操作時(shí),第二個(gè)參數(shù)為0時(shí)引發(fā)了該錯(cuò)誤

ValueError:值錯(cuò)誤,傳給對(duì)象的參數(shù)類型不正確,像是給int()函數(shù)傳入了字符串?dāng)?shù)據(jù)類型的參數(shù)。

下面舉例說(shuō)明下這幾種常見的報(bào)錯(cuò)。

SyntaxError

SyntaxError,語(yǔ)法錯(cuò)誤,報(bào)錯(cuò)信息里出現(xiàn)這個(gè)關(guān)鍵字,我們就要意識(shí)到語(yǔ)法有問題,報(bào)錯(cuò)信息再往上看,報(bào)錯(cuò)信息中還會(huì)用 ^ 指出語(yǔ)法出現(xiàn)問題的具體問題,這樣我們就能快速定位語(yǔ)法有問題的地方。比如下面 for 循環(huán)后面忘了加冒號(hào)導(dǎo)致的語(yǔ)法錯(cuò)誤。

這些語(yǔ)法錯(cuò)誤沒有技巧了,初學(xué)者只有記下來(lái),可以多看看 Python 編程規(guī)范:PEP8 規(guī)范。我收集了 PEP8 規(guī)范的中文版和英文版 PDF,需要的加我微信(微信號(hào):RookieProM)獲取,記得備注“PEP8”。

AttributeError

屬性錯(cuò)誤,特性引用和賦值失敗時(shí)會(huì)引發(fā)屬性錯(cuò)誤,舉個(gè)例子,做過爬蟲小項(xiàng)目的伙伴應(yīng)該對(duì) requests 庫(kù)的用法比較熟悉。

response?=?requests.get(url)

用 requests 請(qǐng)求返回的數(shù)據(jù)為 requests.models.Response,你可以在實(shí)例中打印出它的類型查看。

response?=?requests.get(url,?headers=headers)

print(type(response))

#?結(jié)果
'requests.models.Response'>

Response 響應(yīng)的常用屬性如下:

response.text?????#?響應(yīng)回去的文本(字符串)
response.content???#?響應(yīng)回去的內(nèi)容(二進(jìn)制),一般用來(lái)爬取視頻
response.status_code???#?響應(yīng)的狀態(tài)碼
response.url????#?獲取請(qǐng)求連接地址
response.cookies????#?獲取返回的cookies信息
response.cookies.get_dict()???#?獲取返回的cookies信息
response.request???#?獲取請(qǐng)求方式

那如果對(duì)象不是 Response 類型,你也用來(lái)調(diào)用 text 屬性,這時(shí)就會(huì)報(bào)屬性錯(cuò)誤:AttributeError

NameError

NameError,試圖訪問的變量名不存在,這個(gè)容易理解,有時(shí)變量名忘了定義或者變量名寫錯(cuò)了都會(huì)報(bào)這個(gè)錯(cuò)。

program_language?=?'Python'
name?=?'知識(shí)圈'

official_accounts?=?programer_language?+?name

上面例子中,我故意寫錯(cuò)了一個(gè)單詞 programer_language,這個(gè)單詞沒定義,所以會(huì)直接報(bào) NameError 的錯(cuò)誤。

NameError:?name?'programer_language'?is?not?defined

IOError

操作文件出錯(cuò)會(huì)報(bào) IOError 的錯(cuò)誤或者 IOError 的子類 FileNotFoundError。

with?open('Python.txt',?'r',?encoding='utf-8')?as?f:
????f.read()

上方我打開的是一個(gè)在此目錄下不存在的文件 Python.txt,運(yùn)行后會(huì)報(bào) FileNotFoundError。

FileNotFoundError:?[Errno?2]?No?such?file?or?directory:?'Python.txt'

KeyError

使用了映射中不存在的關(guān)鍵字(鍵)時(shí)引發(fā)的關(guān)鍵字錯(cuò)誤,比如我們讀取字典時(shí),讀取的 key 值不存在時(shí)會(huì)報(bào) KeyError。

infos?=?{'official_accounts':?'Python知識(shí)圈',?'Bilibili':?'菜鳥程序員的日常'}

print(infos['official_accounts'])
print(infos['zhihu'])

上面例子中,key 值為 official_accounts 的值是可以取到的,但是 key 值為 zhihu 的無(wú)法取到,會(huì)報(bào) KeyError 的錯(cuò)。

KeyError:?'zhihu'

IndexError

索引錯(cuò)誤,序列中沒有此索引(index),索引超出序列范圍時(shí)會(huì)報(bào)此錯(cuò)。

infos?=?['official_accounts',?'Python知識(shí)圈',?'Bilibili',?'菜鳥程序員的日常']

print(infos[5])

上面列表中有 4 個(gè)元素,索引最大是 3,因?yàn)樗饕龔?0 開始,所以取索引為 5 的值時(shí),會(huì)報(bào) IndexError 的錯(cuò)。

IndexError:?list?index?out?of?range

TypeError

類型錯(cuò)誤,內(nèi)建操作或是函數(shù)用于在了錯(cuò)誤類型的對(duì)象時(shí)會(huì)引發(fā)類型錯(cuò)誤。

class?Ball:
????def?_init_(self,?color,?size,?direction):
????????self.color?=?color
????????self.size?=?size
????????self.direction?=?direction

????def?bounce(self):
????????if?self.direction?==?"down":
????????????self.direction?=?"up"


myBall?=?Ball("red",?"small",?"down")

上面例子中,運(yùn)行程序會(huì)報(bào) TypeError 的錯(cuò)誤,原因是構(gòu)造函數(shù) init 前后應(yīng)該是雙下劃線 __init__ ,上面寫成了單下劃線。

TypeError:?object()?takes?no?parameters

ZeroDivisonError:

除數(shù)為 0,在用除法操作時(shí),第二個(gè)參數(shù)為 0 時(shí)引發(fā)了該錯(cuò)誤。

a?=?100
b?=?0

c?=?a/b
print(c)

這個(gè)還好理解,除數(shù)為 0 了,會(huì)報(bào)這個(gè)錯(cuò)。

ZeroDivisionError:?division?by?zero

上面舉例講了幾個(gè)常見的異常場(chǎng)景,你只有讀懂了這些報(bào)錯(cuò)信息,你才知道你的代碼是哪里出了錯(cuò)。程序一旦出錯(cuò),是一級(jí)一級(jí)往上報(bào),控制臺(tái)也能看到報(bào)錯(cuò)的具體行數(shù)。

對(duì)于程序項(xiàng)目中的異常,我們可能會(huì)對(duì)他進(jìn)行 try except 異常處理,當(dāng)然這是另一個(gè)主題需要分享的知識(shí)點(diǎn),這里就不再贅述。

debug調(diào)試代碼

如果沒有明顯的報(bào)錯(cuò)信息的話,比如我們經(jīng)常做爬蟲項(xiàng)目的時(shí)候,返回了一個(gè)空列表。這時(shí)我們就需要對(duì)代碼進(jìn)行 debug。小伙伴喜歡用 print 函數(shù)去打印主要的變量,有些直接用編輯器 Pycharm 里面的 debug 功能。

我們?cè)谛枰{(diào)試的代碼前單擊,前面會(huì)顯示紅色實(shí)心圓,整行代碼也會(huì)顯示紅色背景,也可以點(diǎn)擊多行進(jìn)行 debug,如下例子中,計(jì)算 1 到 100 相加之和,我在計(jì)算求和的代碼處加了 debug,右鍵選擇 Debug 選項(xiàng)調(diào)試代碼。

代碼運(yùn)行到我們 debug 的地方時(shí),會(huì)停下來(lái),需要我們手動(dòng)點(diǎn)擊 Debugger 輸出框里的 Step Over 按鈕程序才會(huì)繼續(xù)往下執(zhí)行。

點(diǎn)擊 Step Over 按鈕執(zhí)行時(shí),對(duì)應(yīng)的 Debug 處的后面還會(huì)顯示對(duì)應(yīng)變量的變量,便于我們查看執(zhí)行過程。

面向谷歌編程

如果上面兩步都嘗試了,發(fā)現(xiàn)你還是沒法解決問題,那可能是你有些知識(shí)點(diǎn)沒掌握到,這時(shí)就是在搜索引擎中找找答案了,有名的技術(shù)問答社區(qū) stackoverflow.com 或者發(fā)群里請(qǐng)教其他伙伴,空余時(shí)間把自己不會(huì)的知識(shí)點(diǎn)多看看,這樣提升的速度會(huì)快一些。

總之,能快速找到問題所在,解決問題,總結(jié)問題,這樣進(jìn)步就很快了。

編程界要以和為貴,再見,朋友們!

pk哥個(gè)人微信

添加pk哥個(gè)人微信即送Python資料

→ Python知識(shí)點(diǎn)100題的PDF

→ Python相關(guān)的電子書10本

記得備注:“100題”

往期推薦01

求你了,別再用 pip 那烏龜?shù)乃俣热グ惭b庫(kù)了!

02

Python100例(附PDF下載地址)

03

馬保國(guó)一年能掙多少錢?

↓點(diǎn)擊閱讀原文查看pk哥原創(chuàng)視頻

我就知道你“在看”

總結(jié)

以上是生活随笔為你收集整理的webstorm里stylus代码报错_发生甚莫事了?我的程序为啥又报错了!的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。