成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Python常見報錯及解決方案,建議收藏!

開發 后端
今天,我們就做了一期Python常見報錯的分享,拯救你的代碼。

正文

 大家好,我是Python人工智能技術

如果說寫代碼最害怕什么,那無疑是Bug。而對于新手來說,剛剛接觸編程,在享受寫代碼的成就感時,往往也會被各式各樣的Bug弄得暈頭轉向。

今天,我們就做了一期Python常見報錯的分享,拯救你的代碼!

一. 縮進錯誤(IndentationError)

在Python中,所有代碼都是通過正確的空格排列的。所以,無論是多出來空格,還是缺少空格,整個代碼都不會運行,并且僅返回一個錯誤函數。

Python代碼遵循PEP8空白規范,每一級縮進使用4個空格。

錯誤示例

a=1
b=2
if a<b:
print a

修正

a=1
b=2
if a<b:
print a

二. Tab 和空格混用(TabError)

此類報錯是由于同時使用制表符和空格進行編碼導致的,tab鍵本質上是制表符,而非縮進符。由于不同文本編輯器中制表符代表的空格寬度不一,建議使用空格。

三. 語法錯誤(SyntaxError)

語法錯誤的原因包含下列三種:

   1.無效語法(invalid syntax)

   標點符號遺漏,中英文符號混用,拼寫錯誤,變量名或者函數名使用了關鍵字。

   2.標識符中有無效字符(invalid character in identifier)

   代碼中出現了無法識別的字符,檢查一下是否有多余字符或者中文字符。

   3.檢查到不完整的字符串(EOL while scanning string litera)

   很多情況下是由于字符串兩邊的引號不統一。另外,搜索公眾號Linux就該這樣學后臺回復“git書籍”,獲取一份驚喜禮包。

錯誤示例

print( 'hello' 'world')

錯誤原因:逗號為中文逗號

報錯信息:SyntaxError: invalid character inidentifier

result = (1024+(512*2)/128

錯誤原因:圓括號沒有成對出現

報錯信息:SyntaxError:unexpected EOF whileparsing

if name =="A"
print("hello")

錯誤原因:忘記在if/elif/else/while/for/def/class等語句末尾添加冒號

報錯信息:SyntaxError:invalid syntax

四. 變量名錯誤(NameErro)

變量名錯誤是最普通也是最常會遇到的內建報錯類型,經常會出現在Python變量命名上,如果找不到變量就會引發NameError。關于變量名的規則,需要牢記以下幾條:

  • 變量名只能包含字母、數字和下劃線,不可用數字開頭;
  • 變量名不能包含空格,但可使用下劃線來分隔其中的單詞;
  • 不要將Python關鍵字和函數名用作變量名,如print;
  • 變量名應既簡短又具有描述性;
  • 慎用小寫字母l和大寫字母O,因為容易被錯看成數字1和0。

出現變量名錯誤,可以查看變量是否賦值,是否存在大小寫不統一或者變量名寫錯了的情況,找到后加以修正。

錯誤示例

message = "Hello!"
print(mesage)

錯誤原因:變量名拼寫錯誤,誤將massage拼寫為masge

報錯信息:NameError: name 'mesage' is not defined

五. 索引錯誤(IndexError)

索引是項目在數組或列表中的位置,當我們嘗試從列表中訪問元素或從列表中不存在的索引中訪問元組時,就會發生這種異常。

例如,有一個包含10個元素的列表,索引在0到9之間,如果試圖訪問索引10或11或更多的元素,就會產生IndexError。

錯誤示例

a = [1,2,3]
print(a[3])

錯誤原因:列表a中不存在第4個索引,列表的索引從0開始編號

報錯信息:IndexError: string index out of range

六. 鍵錯誤(KeyError)

在讀取字典中的key和value時,如 果key不存在,就會觸發KeyError錯誤。

錯誤示例

d = {'a':1,'b':2}
print(d['f'])

錯誤原因:鍵‘f’不存在

報錯信息:KeyError: 'f'

七. 類型錯誤(TypeError)

在程序中使用不正確或不受支持的對象類型時,會引發該錯誤。如果嘗試調用不可調用的對象或通過非迭代標識符進行迭代,也會引發此錯誤。

錯誤示例

age=18
print("我的年齡是"+age)

錯誤原因:在使用“+”做拼接的時候,必須使用字符串,或者 把數字用str()函數轉化成字符串

報錯信息:TypeError:can only concatenate str(not"int")to str

八. 屬性錯誤(AttributeError)

特性引用和賦值失敗時會引發屬性錯誤。

此類錯誤的原因是嘗試訪問未知的對象屬性,換句話說就是找不到對應對象的屬性。可以檢查類中構造函數__init__()是否寫正確,左右兩邊各兩條下劃線。

責任編輯:龐桂玉 來源: Python人工智能技術
相關推薦

2024-05-24 10:56:24

PythonURL代碼

2019-10-08 16:05:19

Redis數據庫系統

2010-08-31 16:09:04

DIV+CSS

2024-06-24 00:30:00

2024-07-08 08:45:41

2018-08-24 09:26:13

Redis高可用方式

2024-10-30 11:00:00

Python列表索引

2010-09-07 13:24:18

CSS

2022-03-23 13:05:46

IT服務管理CIO

2016-09-27 21:14:53

JavaURL

2011-07-26 16:05:19

Oracle數據庫服務器

2009-11-18 16:10:00

2023-05-06 15:32:04

2024-11-08 13:47:35

中文亂碼配置

2011-05-25 09:45:40

Oracle數據庫

2024-08-14 16:09:10

2025-01-15 08:49:27

2010-09-01 14:51:12

CSSIEFirefox

2021-05-18 08:21:38

React HooksReact前端

2014-01-07 13:54:02

HadoopYARN
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 毛片高清| 国产一区二区视频免费在线观看 | 狠狠色综合网站久久久久久久 | 亚洲成人精品一区二区 | 精品久久久久久亚洲精品 | 久久精品网| 免费视频一区 | 久久99精品久久 | 男女羞羞视频在线观看 | 欧美精品一区二区蜜桃 | 国产亚洲欧美在线 | 中文字幕综合 | 欧美激情 一区 | 久久精品亚洲欧美日韩精品中文字幕 | 久久综合一区 | 免费在线观看一区二区 | 黄色网页在线观看 | 成人精品鲁一区一区二区 | 久久亚洲综合 | 国产电影一区二区 | 欧美成视频 | 国产精品99久久久久久动医院 | 欧美精品a∨在线观看不卡 国产精品久久国产精品 | 91在线一区 | 中文天堂在线一区 | 91麻豆精品国产91久久久久久 | 伊人超碰在线 | 国产二区av | 真人一级毛片 | 亚洲精品久久区二区三区蜜桃臀 | 久久性av | 日韩一区二区三区在线视频 | 亚洲性人人天天夜夜摸 | 爱综合| 日本男人天堂 | 国产福利视频导航 | 午夜伦理影院 | a级黄色片视频 | 亚洲国产网站 | 免费观看av网站 | 全部免费毛片在线播放网站 |