wordpress建企业网站教程,wordpress php 得到页面描述,网站建设标准合同书,郑州建网站价初入门的 Pythoner 在运行代码时免不了会遇到一些错误#xff0c;刚开始可能看起来比较费劲。
随着代码量的积累#xff0c;熟能生巧#xff0c;当遇到一些运行时错误时能够很快的定位问题原题。
下面整理了常见的 17 个错误#xff0c;希望能够帮助到大家。
1、忘记在 …初入门的 Pythoner 在运行代码时免不了会遇到一些错误刚开始可能看起来比较费劲。
随着代码量的积累熟能生巧当遇到一些运行时错误时能够很快的定位问题原题。
下面整理了常见的 17 个错误希望能够帮助到大家。
1、忘记在 iffordefelifelseclass 等声明末尾加 :会导致SyntaxError invalid syntax如下
if spam 42 print(Hello!)
2、使用 而不是 也会导致SyntaxError: invalid syntax 是赋值操作符而 是等于比较操作
该错误发生在如下代码中
if spam 42: print(Hello!)
3、错误的使用缩进量导致
IndentationErrorunexpected indent
IndentationErrorunindent does not match any outer indetation level
以及IndentationErrorexpected an indented block
记住缩进增加只用在以:结束的语句之后而之后必须恢复到之前的缩进格式。
该错误发生在如下代码中
print(Hello!) print(Howdy!)
或者
if spam 42: print(Hello!)
print(Howdy!)
4、在 for 循环语句中忘记调用 len()
导致TypeError: list object cannot be interpreted as an integer
通常你想要通过索引来迭代一个 list 或者 string 的元素这需要调用 range() 函数。
要记得返回 len 值而不是返回这个列表。
该错误发生在如下代码中
spam [cat, dog, mouse]
for i in range(spam): print(spam[i])5、尝试修改 string 的值
导致TypeError: str object does not support item assignment
string 是一种不可变的数据类型该错误发生在如下代码中
spam I have a pet cat.
spam[13] r
print(spam)
而正确做法是
spam I have a pet cat.
spam spam[:13] r spam[14:]
print(spam)6、尝试连接非字符串值与字符串
导致 TypeError: Cant convert int object to str implicitly
该错误发生在如下代码中
numEggs 12
print(I have numEggs eggs.)
而正确做法是
numEggs 12
print(I have str(numEggs) eggs.)
numEggs 12
print(I have %s eggs. % (numEggs))
7、在字符串首尾忘记加引号
导致SyntaxError: EOL while scanning string literal
该错误发生在如下代码中
print(Hello!)
print(Hello!)
myName Al
print(My name is myName . How are you?)
8、变量或者函数名拼写错误
导致NameError: name fooba is not defined
该错误发生在如下代码中
foobar Al
print(My name is fooba) spam ruond(4.2)
spam Round(4.2)
9、方法名拼写错误
导致 AttributeError: str object has no attribute lowerr
该错误发生在如下代码中
spam THIS IS IN LOWERCASE.
spam spam.lowerr()
10、引用超过 list 最大索引
导致 IndexError: list index out of range
该错误发生在如下代码中
spam [cat, dog, mouse]
print(spam[6])
11、使用不存在的字典键值
导致KeyError‘spam’
该错误发生在如下代码中
spam {cat: Zophie, dog: Basil, mouse: Whiskers}
print(The name of my pet zebra is spam[zebra])
12、尝试使用 Python 关键字作为变量名
导致SyntaxErrorinvalid syntax
Python 关键不能用作变量名该错误发生在如下代码中
class algebra
Python3 的关键字有 and, as, assert, break, class, continue, def, del, elif, else, except, False, finally, for, from, global, if, import, in, is, lambda, None, nonlocal, not, or, pass, raise, return, True, try, while, with, yield 13、在一个定义新变量中使用增值操作符
导致NameError: name foobar is not defined
不要在声明变量时使用 0 或者空字符串作为初始值这样使用自增操作符的一句spam 1等于spam spam 1这意味着 spam 需要指定一个有效的初始值。
该错误发生在如下代码中
spam 0
spam 42
eggs 42
14、在定义局部变量前在函数中使用局部变量此时有与局部变量同名的全局变量存在
导致UnboundLocalError: local variable foobar referenced before assignment
在函数中使用局部变量而同时又存在同名全局变量时是很复杂的使用规则是
如果在函数中定义了任何东西如果它只是在函数中使用那它就是局部的反之就是全局变量。
这意味着你不能在定义它之前把它当全局变量在函数中使用。
该错误发生在如下代码中
someVar 42
def myFunction(): print(someVar) someVar 100
myFunction()
15、尝试使用 range()创建整数列表
导致TypeError: range object does not support item assignment
有时你想要得到一个有序的整数列表所以 range() 看上去是生成此列表的不错方式。然而你需要记住 range()返回的是 range object而不是实际的 list 值。
该错误发生在如下代码中
spam range(10)
spam[4] -1
正确写法
spam list(range(10))
spam[4] -1
注意在 Python 2 中 spam range(10)是能行的因为在 Python 2 中 range()返回的是list值但是在 Python 3 中就会产生以上错误.
16、不存在 或者 – 自增自减操作符
导致SyntaxError: invalid syntax
如果你习惯于例如 C , Java , PHP 等其他的语言也许你会想要尝试使用 或者 -- 自增自减一个变量。
在 Python 中是没有这样的操作符的。
该错误发生在如下代码中
spam 1
spam
正确写法
spam 1
spam 1
17、忘记为方法的第一个参数添加 self 参数
导致TypeError: myMethod() takes no arguments (1 given)
该错误发生在如下代码中
class Foo(): def myMethod(): print(Hello!)
a Foo()
a.myMethod()如果你是准备学习Python或者正在学习想通过Python兼职下面这些你应该能用得上 【点击这里】领取 包括Python激活码安装包、Python web开发Python爬虫Python数据分析人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python ① Python所有方向的学习路线图清楚各个方向要学什么东西 ② 100多节Python课程视频涵盖必备基础、爬虫和数据分析 ③ 100多个Python实战案例学习不再是只会理论 ④华为出品独家Python漫画教程 手机也能学习 ⑤ 历年互联网企业Python面试真题,复习时非常方便 ————————————————