Python学生常犯的错误

需要说明的是:Python在3.5版本的时候引入了类型注释, Python并不会在执行时检查类型注释, 他只是为lDE提供了一个方便静态类型检查工具,对动态语言做静态类型检查,来避免一些潜在的错误。7、Pandas代码不规范 方法链是Pandas的一个很棒的特性, 但是如果在一行中包含了很多的操作,代码可能会变得不...
Python学生常犯的错误


Python初学者常犯的9个错误,萌新避坑指南
1、不使用虚拟环境
这本身不是编码问题,但我仍然认为每种类型的项目进行环境的隔离是一个非常好的实践。
为什么要为每个项目使用专用环境呢?
第一个原因是Python本身包管理的问题, 我们想尽量减少包和版本之间的冲突。
另外一个原因是我们代码和依赖可以方便的部署到任意的位置
使用虚拟环境可以从Anaconda或Pipe nv开始。如果想更深入那么Docker是背选。
2、过度使用J up y ter Notebook
Notebooks非常适合用于教育目的和做一些快速而复杂的分析工作, 但它不能作为一个好的IDE。
一个好的IDE是应对数据科学任务时的真正武器, 可以极大地提高您的工作效率。
Notebooks很适合做实验, 而且可以轻松地将结果展示给其他人。但是它很容易出错,当涉及到执行长期、
协作和可部署的项目时, 最好还是使用IDE, 例如VS code、Py charm、Spyder等。
3、使用绝对而不是相对路径
绝对路径的最大问题是无法进行方便部署,解决这个问题的主要方法是将工作目录设置为项目根目录,并且不要再项目中包含项目目录外的文件,并且在代码中的所有路径均使用相对路径。
4、不处理警告
当我们的代码能够运行但产生奇怪的警告消息,我们很高兴终于让代码运行并收到了有意义的输出。但是我们需要处理这些警告吗?
首先,警告本身并不是错误,但它们是会引起我们对潜在错误或问题的提示。当你的代码中能够运行成功
但可能不是它的预期方式时,警告就会出现。
我遇到的最常见的警告是Pandas的Setting with Copy Warning和DeprecationWarning。
Setting with Copy Warning最大的原因是Pandas检测到链式赋值(Chained Assignment) 时发生的警告,我们应该避免对链式索引的结果赋值,因为这个操作有可能会报warning也有可能不会报。
DeprecationWarning通常指出Pandas弃用了某些功能,并且您的代码在使用更高版本时会中断。
这里的建议并不是要处理所有的警告,但是一定要对所有警告产生的原因有所了解,要知道在特定项目中那些警告式可以忽略的,那些警告的出现对结果会有影响,应当避免。
5、没有使用(很少使用)列表推导式
列表推导式是Python的一个非常强大的特性。许多for循环可以用更易读、更Python且速度更快的列表推导来代替。
可以在下面看到一个示例代码,该代码旨在读取目录中的CSV文件。可以看到, 在使用列表推导时添很容易维护。
6、不适用类型注释
类型注释(或类型提示) 是为变量分配类型的方法。在IDE进行智能感知的提示时可以为我们提供指示变量/参数的类型。这不仅可以提高我们开发的速度,也可以对我们阅读代码有很大的帮助
如果这么写, 我们根本不知道a, b和times的类型
但是加上了类型注释, 我们就知道a和b是字符串times是整数
需要说明的是:Python在3.5版本的时候引入了类型注释, Python并不会在执行时检查类型注释, 他只是为lDE提供了一个方便静态类型检查工具,对动态语言做静态类型检查,来避免一些潜在的错误。
7、Pandas代码不规范
方法链是Pandas的一个很棒的特性, 但是如果在一行中包含了很多的操作,代码可能会变得不可读。
有一个技巧可以让这种方式边的简单,将表达式放入括号中,则可以对表达式的每个组件使用一行。
8、不遵守PEP约定
刚开始使用Python进行编程时, 代码可能是简陋并且不可读的,这是因为我们并没有自己的设计规则来让我的代码看起来更好。如果我们自己来设计这种规则是费事费力的并且这种规则需要很多的实践, 好在Python官方有已经指定好的规则:PEP, 它是Python的官方样式指南。
虽然PEP的规则很多并且很繁琐, 我们可以忽略了一些PEP规则,但可以在90%的代码中使用了它们。
2023-06-21
mengvlog 阅读 8 次 更新于 2025-07-19 16:13:05 我来答关注问题0
  • 8、不遵守PEP约定 刚开始使用Python进行编程时, 代码可能是简陋并且不可读的,这是因为我们并没有自己的设计规则来让我的代码看起来更好。如果我们自己来设计这种规则是费事费力的并且这种规则需要很多的实践, 好在Python官方有已经指定好的规则:PEP, 它是Python的官方样式指南。虽然PEP的规则很多并且很...

  •  赤发科普屋 Python教训学生必看

    Python初学者易犯的8个错误新手避坑指南一般人我都不告诉他 1.真值比较 初学者经常在if语句中使用==比较符来判断表达式是否为真值。这是一种冗余的写法,其实你可以直接对变量进行检查 2.字符串连接 很多初学者教程中,他们会告诉你字符串连接直接使用+操作符。一种更优雅的写法是使用f-string方式, ...

  • (1)无效语法错误,这是最常见的语法错误,多因代码未遵循Python语法规则引起。例如,变量名使用了非法字符,或代码结构不当导致语法不完整。(2)标识符中有无效字符错误,这种情况多出现在频繁切换中英文输入法时,将英文符号误输入为中文字符。只需更正为正确的英文符号即可解决。(3)检查到不完整的字...

  • Python程序员常犯的编码错误主要包括以下几点:在处理字符串子串时使用FOR循环:错误做法:新手往往使用FOR循环获取指定范围内的子串,这导致代码繁琐且难以维护。推荐做法:使用Python的切片功能,如s[start_index:start_index+n_chars],简洁且避免循环的复杂性。逐个字符进行大小写转换:错误做法:逐个检查...

  • 缩进有误,python的缩进非常严格,行首多个空格,少个空格都会报错。这是新手常犯的一个错误,由于不熟悉python编码规则。像def,class,if,for,while等代码块都需要缩进。缩进为四个空格宽度,需要说明一点,不同的文本编辑器中制表符(tab键)代表的空格宽度不一,如果代码需要跨平台或跨编辑器读写,...

檬味博客在线解答立即免费咨询

报错相关话题

Copyright © 2023 WWW.MENGVLOG.COM - 檬味博客
返回顶部