对于刚入门的Pythoner在学习过程中运行代码是或多或少会遇到一些错误,刚开始可能看起来比较费劲。随着代码量的积累,熟能生巧当遇到一些运行时错误时所帮助。能够很快的定位问题原题。下面填了小白司机经常翻车的几个点,希望对大家有所帮助。。。
1、忘记在if,for,def,elif,else,class等声明末尾加 ':'会导致“SyntaxError :invalid syntax”如下:
if temp == 123
print('你笑起来真好看')
2、如果你是java或者C转行过来的,一定对冒泡排序中的交换两个变量很有印象,需要插入第三个变量temp
A = 5;
B = 10;
//交换 A 和 B
temp = A;
A = B;
B = temp;
但是在Python中完全无需这么繁琐,,,
A = 5
B = 10
# 交换A 和 B
A, B = B, A
3、如果需要对字符串进行操作,,,
name = '小花';
sex = 'girl';
age = 18;
Myself = '我叫 + name,我今年 + str(age) + 岁啦,是个漂亮的 + sex!'
这样怎么觉得好乱啊,使用简单点的format方法
name = '小花';
sex = 'girl';
age = 18;
Myself = '我叫{0},我今年{1}岁啦,是个漂亮的{2}!' .format(name, age, sex)
4、因为不了解python中的关键字而导致的'SyntaxError: invalid syntax'
lambda = '张三'
print(lambda)
所以在此整理了一些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
5、字符串与非字符串之间连接错误,导致错误:’TypeError: can only concatenate str (not "int") to str‘
name = '小芳';
age = 18;
print('我叫'+name+'今年我'+age+'岁啦')
正确的写法是使用st()转移后再进行拼接:
name = '小芳';
age = 18;
print('我叫'+name+'今年我'+str(age)+'岁啦')
6、python中的列表List和字符串的索引一样,列表索引从0开始。列表可以进行截取、组合等。但是如果你的引用超过列表中的最大索引,就会报错:’IndexError: list index out of range‘
fruits = ['apple', 'banana', 'peach', 'jujube']
print(fruits[4])
7、初学者缩进不规范容易导致以下错误:’IndentationError: expected an indented block‘
name = ['许嵩','周杰伦','林俊杰','胡歌']
if name[0] == '许嵩':
print('我欠你的孤单,今生恐怕难还!')
8、’=‘是赋值,’==’是判断,如果使用错误,就会导致错误:‘SyntaxError: invalid syntax’
name = ['许嵩','周杰伦','林俊杰','胡歌']
if name[0] = '许嵩':
print('我欠你的孤单,今生恐怕难还!')
9、之前有接触java、C或者其他语言的,肯定可以知道以下代码的含义
age = 10
age +++
print(age)
这种语法在python是错误的,但是对 ‘+=’ 是允许的
age = 10
age += 1 # age = age + 1
print(age)
10、Python 字典(Dictionary)是另一种可变容器模型,且可存储任意类型对象。如果想要访问字典里的value需要把相应的key放入熟悉的方括弧,如果访问key不存在的value,就会报错‘KeyError: '胡八一'’
dict = {'许嵩': '全球变冷', '周杰伦': '晴天', '林俊杰': '江南'}
Singer = dict['胡八一']
print(Singer)
11、如果你想要遍历一个listu后或者字符串中的索引,需要调用rang()函数的时候,就需要len(),否则就会报错'TypeError: 'list' object cannot be interpreted as an integer'
Singerlist = ['许嵩', '周杰伦', '林俊杰', '胡歌']
for i in range(Singerlist): # len(Singerlist)
print(i, Singerlist[i])
12、在程序中没有定义的变量直接使用的话会导致错误'NameError: name 'lanague' is not defined'
if lanague == 1:
print('hello Python')
好了,以上就是初学者比较常见的一些错误,更多关于Python的小知识大家可以扫码关注‘神秘程序员007’,我将用最科普的视角,最接地气的方式给你讲述衣食住行,花草鱼虫,代码编程……
文末整理了Pyuthon中一些常见的错误,希望可以让大家少踩坑,谢谢!
python一些最重要的内建异常类名总结
AttributeError:属性错误,特性引用和赋值失败时会引发属性错误
NameError:试图访问的变量名不存在
SyntaxError:语法错误,代码形式错误
Exception:所有异常的基类,因为所有python异常类都是基类Exception的其中一员,异常都是从基类Exception继承的,并且都在exceptions模块中定义。
IOError:一般常见于打开不存在文件时会引发IOError错误,也可以解理为输出输入错误
KeyError:使用了映射中不存在的关键字(键)时引发的关键字错误
IndexError:索引错误,使用的索引不存在,常索引超出序列范围,什么是索引
TypeError:类型错误,内建操作或是函数应于在了错误类型的对象时会引发类型错误
ZeroDivisonError:除数为0,在用除法操作时,第二个参数为0时引发了该错误
ValueError:值错误,传给对象的参数类型不正确,像是给int()函数传入了字符串数据类型的参数。
以上,便是今天的分享,希望大家喜欢,谢谢大家!