最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python異常之常見(jiàn)的Bug類型解決方法

 更新時(shí)間:2022年03月18日 09:15:09   作者:Python-派大星  
這篇文章主要介紹了Python異常之常見(jiàn)的Bug類型解決方法,主要分享一些粗心導(dǎo)致和知識(shí)不熟練導(dǎo)致的語(yǔ)法錯(cuò)誤以及被迫掉坑等內(nèi)容,文章介紹非常詳細(xì)需要的小伙伴可以參考一下

一、粗心導(dǎo)致的語(yǔ)法錯(cuò)誤SyntaxError

1、input輸入報(bào)錯(cuò)

age=input('請(qǐng)輸入你的年齡:')
if age>=18:
? ? print("成年人做事需要。。。。")

報(bào)錯(cuò):TypeError: '>=' not supported between instances of 'str' and 'int'

因?yàn)閕nput輸入返回值是字符串所以無(wú)法與整數(shù)類型數(shù)字比較

解決辦法:input前面加上int(),把input輸入的數(shù)轉(zhuǎn)為整數(shù)類型,就可以比較數(shù)據(jù)了

age=int(input('請(qǐng)輸入你的年齡:'))
if age>=18:
? ? print("成年人做事需要。。。。")

2、循環(huán)語(yǔ)句報(bào)錯(cuò)

while i<10:
? ? print (i)

循環(huán)語(yǔ)句報(bào)錯(cuò):錯(cuò)誤原因,沒(méi)有循環(huán)變量初始值,也沒(méi)有循環(huán)變量的遞增,然后使用括號(hào)不規(guī)范,使用的中文的括號(hào)

解決方法: 添加虛幻變量的初始值,添加循環(huán)變量的遞增,將不規(guī)范的括號(hào)改正(使用中文括號(hào))

循環(huán)要有三要素:

?i=1 ? #循環(huán)變量的起始值
while i < 10: ? #循環(huán)的條件語(yǔ)句
? ? print(i)
? ? i+=1 ? #變量的遞增

3、賦值報(bào)錯(cuò)

for i in range(3):
? ? uname =input("請(qǐng)輸入用戶名:")
? ? upwd=input("請(qǐng)輸入密碼:")
? ? if uname="admin" and upwd=pwd:
? ? ? ? print("登陸成功!")
? ? else
? ? ? ? print("輸入有誤")
else
? ? print("對(duì)不起,三次均輸入錯(cuò)誤")

報(bào)錯(cuò):SyntaxError: invalid syntax. Maybe you meant '==' or ':=' instead of '='?

錯(cuò)誤多處:=是賦值,==才是比較,if語(yǔ)句比較時(shí)使用了=賦值語(yǔ)句,所以出錯(cuò),還有就是未定義比較的內(nèi)容admin然后就是else語(yǔ)句后面未加:

解決方法:  在if語(yǔ)句比較處將=換成==,因?yàn)?是賦值,==是比較,還有就是在循環(huán)開(kāi)始前加上用來(lái)比較的變量,然后再else語(yǔ)句后加上冒號(hào):

admin="hua"
pwd="123456"
for i in range(3):
? ? uname =input("請(qǐng)輸入用戶名:")
? ? upwd=input("請(qǐng)輸入密碼:")
? ? if uname==admin and upwd==pwd:
? ? ? ? print("登陸成功!")
? ? else:
? ? ? ? print("輸入有誤")
else:
? ? print("對(duì)不起,三次均輸入錯(cuò)誤")

粗心導(dǎo)致錯(cuò)誤的自查寶典:

  • 1、漏了末尾的冒號(hào),如if語(yǔ)句,循環(huán)語(yǔ)句,else子句等。
  • 2、縮進(jìn)錯(cuò)誤,該縮進(jìn)的沒(méi)縮進(jìn),不該縮進(jìn)的卻縮進(jìn)了。
  • 3、把英文符號(hào)寫(xiě)成中文符號(hào)沒(méi)比如說(shuō):引號(hào),冒號(hào),括號(hào)
  • 4、字符串拼接的時(shí)候,把字符串和數(shù)字拼接在一起
  • 5、沒(méi)有定義變量,比如說(shuō)while的循環(huán)條件變量
  • 6、"=="比較運(yùn)算符和"="賦值運(yùn)算符的混用

二、知識(shí)不熟練導(dǎo)致的錯(cuò)誤Bug

1、索引越界問(wèn)題 IndexError

lst=[11,22,33,44]
print(lst[4])

錯(cuò)誤:IndexError: list index out of range 索引越界,雖然有四個(gè)數(shù),但索引不是從一開(kāi)始算,正索引是從0開(kāi)始算,負(fù)索引是從-1開(kāi)始算

解決辦法: 改寫(xiě)為正確的索引

lst=[11,22,33,44]
print(lst[3])

2、append()函數(shù)的使用報(bào)錯(cuò)

lst=[]
lst=append("A","B","C")
print((lst))

報(bào)錯(cuò):NameError: name 'append' is not defined 錯(cuò)誤的方法使用append()函數(shù)

解決方法:掌握正確的使用函數(shù)的技巧,使用函數(shù)不是使用=調(diào)用,而是使用.去調(diào)用函數(shù),并且append()函數(shù)一次只能增加一個(gè)元素

lst=[]
lst.append("A")
lst.append("B")
lst.append("C")
print((lst)) ?#返回值['A', 'B', 'C']

知識(shí)點(diǎn)掌握不熟練的導(dǎo)致的錯(cuò)誤,唯一的解決方法就是練練練

三、思路不清晰導(dǎo)致的問(wèn)題解決方案

1、使用print()函數(shù)

將出錯(cuò)的代碼用print輸出,將有問(wèn)題的代碼注釋掉,一步一步的調(diào)試,最后將想要的結(jié)果輸出

2、使用"#"暫時(shí)注銷部分代碼 

解決方法:多加練習(xí),掌握基礎(chǔ)知識(shí)

四、被動(dòng)掉坑

程序代碼邏輯沒(méi)有錯(cuò),知識(shí)因?yàn)橛脩翦e(cuò)誤操作或者一些"例外情況"而導(dǎo)致的程序崩潰

被動(dòng)掉坑問(wèn)題的解決方案:

python提供了異常處理機(jī)制,可以在異常出現(xiàn)時(shí)即使補(bǔ)貨,然后內(nèi)部消化,讓程序繼續(xù)運(yùn)行
異常捕獲處理 try:   except  xxx:語(yǔ)句   xxx為錯(cuò)誤類型

try:用于放入容易出錯(cuò)的代碼
except用于處理異常并正常輸出后續(xù)代碼,可以使代碼不會(huì)報(bào)錯(cuò)結(jié)束,可以出現(xiàn)多個(gè)except語(yǔ)句來(lái)處理多種異常類型。

使用方式:

try:

將容易出錯(cuò)的代碼放入其中
易出錯(cuò)代碼
易出錯(cuò)代碼

except  可能出現(xiàn)的類型:

print(捕獲異常后用于提示的話語(yǔ))

except  可能出現(xiàn)的類型:

print(捕獲異常后用于提示的話語(yǔ))

一般代碼:

a=int(input("請(qǐng)輸入第一個(gè)整數(shù):"))
b=int(input("請(qǐng)輸入第二個(gè)整數(shù):"))
result=a/b
print("結(jié)果為:",result)

極容易出現(xiàn)報(bào)錯(cuò),導(dǎo)致終止后面的程序,比如整除不能輸入0,不能輸入英文,只要輸入了,那么就會(huì)報(bào)錯(cuò)結(jié)束程序

所以就需要使用到try:  except

try: ? ?#將易錯(cuò)代碼放進(jìn)去
? ? a=int(input("請(qǐng)輸入第一個(gè)整數(shù):"))
? ? b=int(input("請(qǐng)輸入第二個(gè)整數(shù):"))
? ? result=a/b
? ? print("結(jié)果為:",result)
except ZeroDivisionError: ? #不允許被0除的異常(異常類型在程序報(bào)錯(cuò)時(shí)會(huì)出現(xiàn),將這種異常類型放入后,出現(xiàn)該異常就會(huì)自動(dòng)處理,而不會(huì)報(bào)錯(cuò)終止程序)
? ? print("對(duì)不起,除數(shù)不允許為0") ?#出現(xiàn)該異常后的提示
except ValueError: ? ?#輸入異常,int括號(hào)里的input只能輸入數(shù)字串,不能輸入字符串
? ? print("只能輸入數(shù)字串") ? #出現(xiàn)該異常后的提示
print("程序結(jié)束") ? ?#程序可能出現(xiàn)的異常都用except寫(xiě)出來(lái)了,所以不管出現(xiàn)什么異常,后面的程序一樣運(yùn)行

到此這篇關(guān)于Python異常之常見(jiàn)的Bug類型解決方法的文章就介紹到這了,更多相關(guān)Python異常解決內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 幾行Python代碼爬取3000+上市公司的信息

    幾行Python代碼爬取3000+上市公司的信息

    今天小編就為大家分享一篇關(guān)于幾行Python代碼爬取3000+上市公司的信息,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-01-01
  • Python操作excel文件與csv文件方法詳解

    Python操作excel文件與csv文件方法詳解

    這篇文章主要介紹了Python操作excel文件與csv文件方法,csv文件可以直接通過(guò)excel打開(kāi),以行列保存顯示文件,相比與excel來(lái)說(shuō)它只能保存數(shù)據(jù),不能保存公式和函數(shù),然而python處理兩種文件的方式大同小異,感興趣的朋友可以參考下
    2023-12-12
  • python如何寫(xiě)入dbf文件內(nèi)容及創(chuàng)建dbf文件

    python如何寫(xiě)入dbf文件內(nèi)容及創(chuàng)建dbf文件

    這篇文章主要介紹了python如何寫(xiě)入dbf文件內(nèi)容及創(chuàng)建dbf文件,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python入門(mén)教程(四)Python注釋介紹

    Python入門(mén)教程(四)Python注釋介紹

    這篇文章主要介紹了Python入門(mén)教程(四)Python注釋介紹,Python是一門(mén)非常強(qiáng)大好用的語(yǔ)言,也有著易上手的特性,本文為入門(mén)教程,需要的朋友可以參考下
    2023-04-04
  • anaconda?navigator打不開(kāi)問(wèn)題的解決方法

    anaconda?navigator打不開(kāi)問(wèn)題的解決方法

    在使用python的發(fā)行版anaconda時(shí),常常需要根據(jù)自己的項(xiàng)目安裝新的庫(kù),下面這篇文章主要給大家介紹了關(guān)于anaconda?navigator打不開(kāi)問(wèn)題的解決方法,需要的朋友可以參考下
    2022-12-12
  • 教你如何利用Python批量翻譯英文Word文檔并保留格式

    教你如何利用Python批量翻譯英文Word文檔并保留格式

    本文將給大家分享一個(gè)實(shí)用的Python辦公自動(dòng)化腳本 利用Python批量翻譯英文Word文檔并保留格式,最終效果甚至比部分收費(fèi)的軟件還要好!文中有非常詳細(xì)的代碼示例.需要的朋友可以參考下
    2021-05-05
  • python 使用socket傳輸圖片視頻等文件的實(shí)現(xiàn)方式

    python 使用socket傳輸圖片視頻等文件的實(shí)現(xiàn)方式

    這篇文章主要介紹了python 使用socket傳輸圖片視頻等文件的實(shí)現(xiàn)方式,本文給出了實(shí)例代碼,需要的朋友可以參考下
    2019-08-08
  • django實(shí)現(xiàn)將修改好的新模型寫(xiě)入數(shù)據(jù)庫(kù)

    django實(shí)現(xiàn)將修改好的新模型寫(xiě)入數(shù)據(jù)庫(kù)

    這篇文章主要介紹了django實(shí)現(xiàn)將修改好的新模型寫(xiě)入數(shù)據(jù)庫(kù),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2020-03-03
  • 無(wú)法使用pip命令安裝python第三方庫(kù)的原因及解決方法

    無(wú)法使用pip命令安裝python第三方庫(kù)的原因及解決方法

    今天小編就為大家分享一篇無(wú)法使用pip命令安裝python第三方庫(kù)的原因及解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-06-06
  • Python3.10的一些新特性原理分析

    Python3.10的一些新特性原理分析

    由于采用了新的發(fā)行計(jì)劃:PEP 602 -- Annual Release Cycle for Python,我們可以看到更短的開(kāi)發(fā)窗口,我們有望在 2021 年 10 月使用今天分享的這些新特性
    2021-09-09

最新評(píng)論

海盐县| 白河县| 银川市| 青州市| 垦利县| 宜阳县| 井研县| 改则县| 云梦县| 凌海市| 宁蒗| 青神县| 浏阳市| 武冈市| 依安县| 黑山县| 石阡县| 祁阳县| 光山县| 芜湖县| 马关县| 仁化县| 永宁县| 邳州市| 襄汾县| 青州市| 洛南县| 武邑县| 东乡县| 宣武区| 五河县| 商水县| 阳东县| 哈巴河县| 甘德县| 扶绥县| 温州市| 礼泉县| 柏乡县| 黑龙江省| 全州县|