Python初学者常见错误问题汇总

1、在客户端和服务端如何传递数组?

答:在客户端和服务端可以使用json进行数据传输。在客户端把数据转换成json字符串,然后使用POST方法发送给服务端。 服务端收集到数据之后,使用json.loads()方法,解析json数据。 返回数据也使用这样的机制。这就完成了数据从客户端到服务端的交互。

2、使用Mac、Windows和Linux系统有区别么?
答:从学习Python基础知识的角度来说,是没有区别的。 搭建开发环境和开发工具会有区别。

3、为什么看着语句正常,报告SyntaxError :invalid character in identifier ?
答:注意使用的逗号和冒号,都要使用英文的。 因为中文和英文在这两个符号表示的时候,看上去差不多,所以在写这两个符号的时候,一定要特别注意。

4、为什么使用类的成员函数时,会报告参数数量不对?
答:这是因为类的成员函数,第一个参数永远是指向对象的self参数。在函数调用时,系统会自动把对象作为第一个参数传递给函数。所以在调用函数时,我们需要提供的参数是从第二个参数开始的。

5、错误信息的查看

在发生报错时,一定要注意错误的提示信息。如上图所示,提示了三方面的信息:
1、错误发生在test.pyt文件的第12行

2、向上的小箭头,说明错误发生在这一行的具体位置。

3、最后一行,提示错误原因。

另外还要注意,错误提示只是解释器认为错误发生的位置。有的时候,上一行的错误,会引起下一行报错。应该注意这个情况。

6、报错ModuleNotFoundError, No module named ‘xxxxx’. 如下图所示:

答:翻译成中文意思是没有名字叫做’xxxx’的模块。
主要问题可能来自于三个方面:
a、模块名字有误。 请注意模块名字是区分大小写的,请确认模块名书写正确。
b、模块确实是没有安装。 使用pip 安装该模块。
c、模块安装了,但是系统没有找到。 系统会从一系列的目录中查找给定名字的模块。 如果安装模块的路径没包含这些目录中,系统就找不到该模块。
解决方法可参考:https://blog.csdn.net/ling_mochen/article/details/79314118

7、报错,显示文件找不到(No such file or directory: xxxx),如下图所示

答:明明要读取的文件和代码在同一个目录下,为什么显示没有这个文件呢?

这里涉及到几个知识点:

a、要分清楚两个概念:文件自己的路径和系统的当前路径。

比如:我们有一个python文件 C:\python\sub1\test.py. 这个路径叫做文件的路径,这个路径只要是文件不移动,就是固定的。

当前路径是指进入命令行之后,所在的路径。比如我们进入c:\python这个文件夹,那么c:\python 就是当前路径。如果进入C:\python\sub1, C:\python\sub1 就是当前路径。所有可以看到,当前路径是可以随意切换的。 使用IDE时,当前路径不一定是文件所在的路径。

b、open函数中,如果使用的是相对路径,那么是相对于当前路径来说的。

例如要打开C:\python\sub1\123.txt 。如果当前路径是C:\python,那么需要open(“sub1/123.txt”)。如果当前路径是C:\python\sub1,那么open(“123.txt”)就可以了。 为了确保这个文件肯定能够被找到,可以使用绝对路径,这样就跟当前路径无关了。

c、Windows环境下,用字符串表示路径时,需要使用斜杠(/),而不是反斜杠()。因为反斜杠在python中会被识别为转义。如下所示:

最终,使用绝对路径,并且把分隔符修改成斜杠之后,程序运行结果符合预期.

7.查看pip版本

答: 在命令行执行:pip show pip 或者 pip --version

8.为什么字符串前面有个字面r,如下图所示

答:我们把不加r前缀的字符串成为一般字符串,而把r做前缀的字符串称为原始字符串。一般的字符串中,为了表达一些特别含义的字符,需要使用反斜杠(\)进行转义。比如,我们用\n表示换行。 也就是说,在一般的字符串里面反斜杠(\)会被特别的处理。如果我们的字符串中,真的需要反斜杠怎么办? 那么只能用两个联系的反斜杠(\),也就是对反斜杠转义。如果如下面这样一个路径,为了正确表达这个路径,我们需要大量的使用反斜杠。
path = ‘C:\Program Files\fnord\foo\bar\baz\frozz\bozz’
原始字符串的特点是不会对反斜杠()做任何特殊的处理,所以如果使用原始字符串,用 r’C:\Program Files\fnord\foo\bar\baz\frozz\bozz’ 就可以正确表达。

9、如下语句有什么不同?

答:有赋值顺序的不同。
#1中,先把b的值(20)赋给了a,然后再计算 a +b ,其实就是计算两个b的和。
#2中,赋值是同时发生的,所有等号=右侧的所有变量,都保持着原来的值。即c还是10,d是20.

所以 #1中b的结果是40, #2中d的结果30.

10、为什么列表排序完之后的返回值是None ?

a = [3,2,1]
print(a.sort())  #结果为Noe

  答:首先需要明确一下,sort是一个在本地对列表进行修改的函数,并且返回值就是None。
一般我们的需要可能是:获取一个列表的排序结果,并且原来的列表保持不变。 这个时候需要用到copy方法,先创建一个新的列表,如下:

a = [3,2,1]
b = a.copy()  #这里不能直接用 b = a ,否则 a和b会同时都变化
b.sort()
print(a) #[3,2,1]
print(b) #[1,2,3]

  

另外,也可以使用另外一个内置函数sorted()。这个函数可以操作列表,返回一个排序之后的新列表,并且保持原来的列表顺序不变。
?

11、为什么有些函数直接直接使用,而有些就要import ?
答:能直接被使用的函数,叫做内置函数。
想查看有哪些函数属于内置的,可以在命令行执行命令: dir(builtins)

举个例子, 比如你有一个衣架, 平时常穿的几件衣服,会挂在衣架上。而其他的衣服,会放到柜子里面。 平时穿衣架上的衣服,有些时候,需要从衣柜里面拿衣服穿。 这些放在衣架上的衣服,我们称之为内置衣服。

Python也一样, 内置函数就是那些基本的常用的函数。其他的函数都放在函数箱(模块)里面。 当需要使用的时候,在从函数箱(模块)里面拿出来使用。

函数箱是为了跟上面的例子对比,我自己发明的概念,准确说应该叫模块。

最后给大家分享一些小福利

链接:https://pan.baidu.com/s/1sMxwTn7P2lhvzvWRwBjFrQ

提取码:kt2v

链接容易被举报过期,如果失效了就在这里领取吧

原文地址:https://www.cnblogs.com/guran0823/p/12508891.html

时间: 2024-10-09 23:05:50

Python初学者常见错误问题汇总的相关文章

python入门基础教程05 Python工具常见错误

Python-Shell反馈常见错误 初学者通常会使用Python-Shell来学习Python基础及语法知识,在使用Python-Shell 时会遇到这样或者那样的错误,有的是语法错误,有的是键入的函数或者变量名字拼写错误,现就初学者常出现的错误做一个总结. 变量.函数未定义 下面我们简单总结一下在使用Python-Shell时常见的错误提示. >>>len = 12>>>le Traceback (most recent call last):   File &qu

Java学习笔记2、环境变量配置与初学者常见错误

2.1 环境变量的配置 2.1.1 path环境变量配置的作用 程序的执行需要使用外部指令javac,但是javac指令仅仅能在JDK安装目录下的bin目录下运行,因此程序只能写入bin目录程序开发过程中,不能将源代码写入JDK的安装目录,因此需要将源程序保存到任意位置的指定目录(英文目录),所以需要使javac指令在任意目录下可以运行. 2.1.2 path环境变量配置方式1 通过配置path环境变量,将javac指令所在目录也就是JDK安装目录下的bin目录配置到path变量下,即可使jav

python中常见错误及try-except 的用法

1.常见的错误 我们在使用python过程中会出现: (1)SyntaxError 句法错误. (2)IndentationError 缩进错误. (3)NameError 变量未定义错误. (4)TypeError 类型错误. 2.处理异常 我们使用try...except 来处理异常: 基本语法: try: segment except: segment 首先执行try子句,如果没有异常发生,except 子句不执行.如果执行try子句发生异常,那么该子句就会被忽略,如果异常匹配与 exce

Python 中常见错误总结

IndentationError: unexpected indent Python 中强制缩进,,  IndentationError: unexpected indent   缩进错误 这类错误非常常见,一般都是由于tab在不同的平台上占用长度不同导致,有些事程序员自己直接使用空格或其他来顶替tab. 解决办法非常简单,在所在平台上使用标准的tab进行缩进,就OK了. 原文地址:https://www.cnblogs.com/tanrong/p/8455013.html

2014秋C++第5周项目1参考-见识初学者常见错误

课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,实践要求见http://blog.csdn.net/sxhelijian/article/details/39493833. 课程资源在云学堂"贺老师课堂"同步展示,使用的帐号请到课程主页中查看. [项目1]下面是最经典和最简单的C++程序.在ideone.com中运行程序,并在能正确运行的程序基础上,"捣乱"制造些错误,对此进行观察.经验是从

初学者常见错误1——赋值时的类型转换

猜测下面程序的输出结果,并上机尝试: 1. #include<stdio.h> #include<math.h> int main() { printf("%d",pow(5,2)); } 2. #include<stdio.h> #include<math.h> int main() { printf("%f",pow(5,2)); } 3. #include<stdio.h> #include<m

Python程序的常见错误(收集篇)

关于Python Python是一门解释性的,面向对象的,并具有动态语义的高级编程语言.它高级的内置数据结构,结合其动态类型和动态绑定的特性,使得它在快速应用程序开发(Rapid Application Development)中颇为受欢迎,同时Python还能作为脚本语言或者胶水语言讲现成的组件或者服务结合起来.Python支持模块(modules)和包(packages),所以也鼓励程序的模块化以及代码重用. 关于本文 Python简单.易学的语法可能会误导一些Python程序员(特别是那些

Python程序员的10个常见错误(转)

add by zhj:虽然学Python也有两年了,但这些问题的确容易犯,看来对Python的理解还有些地方不深入.先转了,有时间再好好看 译文:http://blog.jobbole.com/68256/ 本文由 伯乐在线 - datorhjaelten 翻译.未经许可,禁止转载!英文出处:toptal.欢迎加入翻译小组. 关于Python Python是一门解释性的,面向对象的,并具有动态语义的高级编程语言.它高级的内置数据结构,结合其动态类型和动态绑定的特性,使得它在快速应用程序开发(Ra

李洪强iOS开发之OC常见错误汇总

// //  main.m //  16 - 常见错误汇总 // //  Created by vic fan on 16/7/13. //  Copyright © 2016年 李洪强. All rights reserved. // OC的常见错误汇总: 1 @interface ... @end  和 @implementation ..@end 之间不能嵌套 2只有类的声明没有类的实现 3 漏写@end 4 两个类的声明顺序可以打乱,但是类的声明一定要在类的实现前面 5 成员变量没有放在