Python常见的运行错误
(1)忘记在 if , elif , else , for , while , class ,def 声明末尾添加 :(导致 “SyntaxError :invalid syntax”)
该错误将发生在类似如下代码中:
if
spam
=
=
42
print
(
'Hello!'
)
= 是赋值操作符而 == 是等于比较操作。该错误发生在如下代码中:
if
spam
=
42
:
print
(
'Hello!'
)
print
(
'Hello!'
)
print
(
'Howdy!'
)
或者:
if
spam
=
=
42
:
print
(
'Hello!'
)
print
(
'Howdy!'
)
或者:
if
spam
=
=
42
:
print
(
'Hello!'
)
通常你想要通过索引来迭代一个list或者string的元素,这需要调用 range() 函数。要记得返回len 值而不是返回这个列表。
该错误发生在如下代码中:
spam
=
[
'cat'
,
'dog'
,
'mouse'
]
for
i
in
range
(spam):
print
(spam[i])
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)
该错误发生在如下代码中:
numEggs
=
12
print
(
'I have '
+
numEggs
+
' eggs.'
)
numEggs
=
12
print
(
'I have '
+
str
(numEggs)
+
' eggs.'
)
或者:
numEggs
=
12
print
(
'I have %s eggs.'
%
(numEggs))
该错误发生在如下代码中:
print
(Hello!')
或者:
print
('Hello!)
或者:
myName
=
'Al'
print
(
'My name is '
+
myName
+
. How are you?')
该错误发生在如下代码中:
foobar
=
'Al'
print
(
'My name is '
+
fooba)
或者:
spam
=
ruond(
4.2
)
或者:
spam
=
Round
(
4.2
)
该错误发生在如下代码中:
spam
=
'THIS IS IN LOWERCASE.'
spam
=
spam.lowerr()
该错误发生在如下代码中:
spam
=
[
'cat'
,
'dog'
,
'mouse'
]
print
(spam[
6
])
该错误发生在如下代码中:
spam
=
{
'cat'
:
'Zophie'
,
'dog'
:
'Basil'
,
'mouse'
:
'Whiskers'
}
print
(
'The name of my pet zebra is '
+
spam[
'zebra'
])
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
在函数中使用局部变来那个而同时又存在同名全局变量时是很复杂的,使用规则是:如果在函数中定义了任何东西,如果它只是在函数中使用那它就是局部的,反之就是全局变量。
这意味着你不能在定义它之前把它当全局变量在函数中使用。
该错误发生在如下代码中:
someVar
=
42
def
myFunction():
print
(someVar)
someVar
=
100
myFunction()
有时你想要得到一个有序的整数列表,所以 range() 看上去是生成此列表的不错方式。然而,你需要记住 range() 返回的是 “range object”,而不是实际的 list 值。
该错误发生在如下代码中:
spam
=
range
(
10
)
spam[
4
]
=
-
1
spam
=
list
(
range
(
10
))
spam[
4
]
=
-
1
如果你习惯于例如 C++ , Java , PHP 等其他的语言,也许你会想要尝试使用 ++ 或者 -- 自增自减一个变量。在Python中是没有这样的操作符的。
该错误发生在如下代码中:
spam
=
1
spam
+
+
spam
=
1
spam
+
=
1
该错误发生在如下代码中:
class
Foo():
def
myMethod():
print
(
'Hello!'
)
a
=
Foo()
a.myMethod()
Python常见的运行错误的更多相关文章
- python常见的编程错误
常见的编程错误 2.1 试图访问一个未赋值的变量,会产生运行时错误. 2.2 ==,!=, >=和<=这几个运算符的两个符号之间出现空格,会造成语法错误. 2.3 !=,<>, ...
- Python IDLE 运行错误:IDLE's subprocess didn't make connection. --已解决(原创)!
Python IDLE 错误描述: Subprocess Startup ErrorIDLE's subprocess didn't make connection. Either IDLE can' ...
- Python常见的错误汇总
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 错误: [错误分析]第二个参数必须为类,否则会报TypeError,所以正确的应 ...
- Python常见十六个错误集合,你知道那些?
使用python会出现各种各样的错误,以下是Python常见的错误以及解决方法. 1.ValueError: 'Conv2d_1a_3×3' is not a valid scope name 这个是 ...
- 初学Python常见异常错误,总有一处你会遇到!
初学Python常见错误 忘记写冒号 误用= 错误 缩紧 变量没有定义 中英文输入法导致的错误 不同数据类型的拼接 索引位置问题 使用字典中不存在的键 忘了括号 漏传参数 缺失依赖库 使用了pytho ...
- python 常见错误和异常 函数 正则表达式及多线程编程
生成随机密码#!/usr/bin/env python import stringfrom random import choice def gen_pass(num=9): all_chs = st ...
- python中常见的一些错误异常类型
python提供了两个非常重要的功能来处理python程序在运行中出现的异常和错误.你可以使用该功能来调试python程序. 什么是异常? 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的 ...
- python常见的错误提示处理
python常见的错误有 NameError变量名错误 IndentationError代码缩进错误 AttributeError对象属性错误 TypeError类型错误 IOError输入输出错误 ...
- python常见排序算法解析
python——常见排序算法解析 算法是程序员的灵魂. 下面的博文是我整理的感觉还不错的算法实现 原理的理解是最重要的,我会常回来看看,并坚持每天刷leetcode 本篇主要实现九(八)大排序算法 ...
随机推荐
- hdu 3632 A Captivating Match(区间dp)
题目链接:http://acm.split.hdu.edu.cn/showproblem.php?pid=3632 题意:n个人进行比赛,每个人有一个价值a[i],最后冠军只有一个,只能相邻两个人进行 ...
- 试听笔记:javascript入门精通
一.数据类型 1.原始类型:number.string.boolean.null.undefined 2.对象类型:Object (Function.Array.Date...) P.类型隐式转换:' ...
- jQuery学习笔记--JqGrid相关操作 方法列表(上)
1.获得当前列表行数:$("#gridid").getGridParam("reccount"); 2.获取选中行数据(json):$("#gridi ...
- iOS编程中遇到的问题
1.应用在iPhone6plus 系统iOS9.1安装时没遇到问题,在iPhone4s 系统iOS 7时bulid success 但是安装失败提示 There was an internal API ...
- 6个函数的output看JS的块级作用域
1. var output = 0; (function() { output++; }()); console.log(output); 函数对全局的output进行操作,因为JS没有块级作用域,所 ...
- 完全卸载MySQL重新安装MySQL
在"运行(win+R)"里键入regedit进入注册表, 输入之后回车(Enter)确认. 确认之后进去注册表界面 1.HEKY_LOCAL_MACHINE\SOFTWARE\MY ...
- 开源战棋 SLG 游戏框架设计思考(二)规则系统要考虑的因素
游戏对象 1. 地块方格 地形:山脉.丘陵.乔木林.灌木林.平原.河流.湖泊.海洋.雪原.沼泽.沙漠.暗礁.滩涂.岛屿等等(需完善) 设施:铁路.公路.桥梁.机场.城市.村庄.岸防炮.要塞.废墟等等( ...
- 返回数据方法DeaCacheCommand,由CRL自动实现
越来越多的人学起了前端,或许部分的初衷仅是它简单易上手以及好找工作,毕竟几年前只会个html和css就能有工作,悄悄告诉泥萌,这也是博主一年前的初衷 还好numpy, scikit-learn都提供了 ...
- C# 依赖注入
http://www.cnblogs.com/leoo2sk/archive/2009/06/17/1504693.html 这篇文章真的非常非常好···绝对值得收藏学习. 目录 目录 1 ...
- 前端开发自学之JavaScript——显示当前时间
<html> <head> <title>JavaScript</title> <script language="javascript ...