需要遵循Python社区制定的最佳实践和指南来编写更好的Python代码。遵守这些标准可以使你的代码更加可读、可维护和高效。


这篇文章将展示一些帮助你编写更好的Python代码的技巧:


遵循PEP8风格指南。


PEP8是Python代码的官方风格指南。它提供了一组格式化代码的标准,如如何缩进,如何使用空间,如何命名变量。遵循这些标准会让你的代码更一致,更容易阅读。这里有一些给你的。


遵守PEP8命名协议


PythonPEP8(Python增强提案8)提供了一些关于Python代码应如何格式化或样式化的建议。若要编写Pythonic代码,则应尽量遵循这些样式协议(简而言之,

”pythonic“用Python独特的功能编写可读美观的代码,描述一种编码风格。


在编写代码时,让我们来看一些应遵循的策略:


变量名-变量名只能包含小写字母,名称中的任何两个字都是用下划线分开的。比如你想把一个变量命名为“员工名称”,这里有一些方法可以做到这一点。


函数名称-如果有多个单词,函数名称应只包含小写字母,并用下划线隔开。不包括任何大写字母


类别名称——如PEP8所述,所有类别名称应从大写字母开始。如果名字中有两个单词,请使用Cap-Words协议。这意味着你应该从大写字母开始每个单词。它们不应该是单词之间的空格。


最大行长-您的代码应易于阅读,因此应避免不必要的长代码行。PEP8建议您的代码行不要超过79个字符。


使用描述性和有意义的变量名称。


使用描述性和有意义的变量名是编写可读代码的关键之一。这将使其他人更容易理解你的代码,并在以后回头看你的代码时记住每一个变量代表什么。


我们为对象指定Python中的变量。


简而言之,变量是指对象的指针。调用变量为我们提供对象访问。如果Python没有错误,我们可以创建不同类型的变量名称。由于变量名称不会导致错误,并不意味着使用它是最好的做法。


因为变量被用作对象的引用,所以最好让变量的名称来描述它们所持有的对象。举例来说,如果你有一份员工姓名清单,把变量命名为“x”“也许方便又容易,但这并不是一个好主意。


虽然这个代码是在没有地址的情况下执行的,但它是一个糟糕的编程习惯,因为“x“没有指定变量持有的对象类型。假如你的脚本上有许多代码,你就很难弄清楚。x"指向的对象变量是什么?


这种命名变量的方法使调试程序变得困难。变量名称应试图识别其指向的对象类型。鉴于它标记了列表中的信息,名称“employee_names在很大程度上,作为变量名是不言而喻的。这比名字“x"更具描述性。


谨慎使用行内注释。


尽管注释对解释复杂或混乱的代码很有用,但是不要过度使用它们很重要。过多的注释会使你的代码混乱,难以阅读。相反,尽量使用清晰简洁的变量名,编写结构良好的代码,使您的代码不言而喻。


使用列表理解


假设你有一个数字列表,你希望返回所有可以被2整除的数字;你可以用for循环句子或列表来理解。


让我们用代码来解释。我们将从一个for循环句开始。


让我们将这个解决方案与列表推导相结合。


您是否注意到上述列表理解只需一行代码就能完成相同的任务?


通过列表理解,我们不需要生成空列表或使用列表方法append()。简单的理解列表使我们的代码更具可读性。在大多数情况下,它比传统的for循环句更有效率。


用Join()方法连接字符串


假如你有一个字符串列表要连接,你有两个选择——你可以使用连接“+”运算符或字符串的方法“join”。


下列代码中,我们使用“+”运算符将字符串列表组合在一起。


当我们遍历列表时,我们应该在上面的代码中使用“+”运算符将字符串列表连接到new_string变量。为了合并字符串之间的空格,我们在最后连接一个空字符串(“”)。


你可以看到代码运行良好。但是,这种方法的内存效率并不高。


这是因为字符串的类型。因为字符串是不可改变的,所以在创建新对象时尽量结合它们的结果。每次我们调用“+”运算符,我们都必须为创建的对象分配内存。

这使得这种方法变得无聊,并减缓了较大的字符串。


然而,join()方法不是这样。这是因为join()方法只为最终对象分配内存。这使得这种方法更快地连接更大的字符串。因此,下面的代码通常更快更简洁。


使用描述性函数和方法名称。


类似于使用描述性变量名,使用描述性函数和方法名可以让你的代码更容易理解和维护。如果你有一个长或复杂的函数,没有语境很难理解,这一点尤为重要。


通过遵循这些提示,您可以编写更好的Python代码,更容易阅读、维护和理解。请记住,始终努力使代码简单明了,并遵循既定的最佳实践和指南。



以下是小编精心整理的phyton课程目录,希望对您有所帮助:


01 1.01爬虫说明mp4


02 1.02爬虫技术库及反爬说明.mp4


03 1.03百度搜索及文件下载mp4


04 1.04百度翻译之urlib的POST请求mp4


05 1.05复杂的GET请求多页数据mp4


06 106urlib的build. opener及handers.mp4


07 1.07上下文扩展和Dao设计.mp4


08 2.01回顾知识点.mp4


09 2.02requests各方法及参数讲解.mp4


10 203request的请求实战及Response对象.mp4


11 2.04xpath解析的应用.mp4


122.05古诗文网的爬虫.mp4


13 2.06request的session及图片验证码处理mp4


143.01回顾知识点.mp4


15 3.02封装ElasticSearch操作的SDK.mp4


16 3.03re正则解析站长之家数据mp4


173.04设计多务爬虫框架.mp4


183.05进程线程实现多任务爬虫.mp4


19 3.06bs4爬虫meinv网.mp4


204.01回顾知识点mp4


214.02Flask实现文件上传服务.mp4


22 4.03设计协程的爬虫框架mp4


23 4.04协程实现的美女网爬虫.mp4


24 4.05解析zhaopin网的所有城市和初始使用selenium.mp4


25 4.06Selenium爬取zhaopin.mp4


26 4.07说明window. .handlers.mp4


27 4.08Selenium爬取百聘网mp4


28 5.01回顾知识点mp4


29 5.02chrome-headleass应用.mp4


30 5.03docker启动splash服务.mp4


31 5.04打展Docker搭建私有仓库mp4


32 5.05打展VM安装ubuntu-server.mp4


33 5.06扩展远程连接sever及免密登录mp4


34 5.07单元测试及测试套件.mp4


35 6.01回顾与总结上周知识点mp4


36 6.02日志模块的应用.mp4


37 6.03安装scrapy的说明.mp4


38 6.04scrapy架构说明.mp4


39 6.05scrapy指令.mp4


40 6.06scrapy的Response及数据解析.mp4


41 7.01回顾知识点mp4


42 7.02ltem应用.mp4


43 7.03pipeline处理_1.mp4


44 7.04定量爬虫伋中间件说明.mp4


45 7.05下载中间件的方法说明.mp4


46 7.06下载中间件的Cookies.mp4


47 7.07crawlspider规则爬虫.mp4


48 8.01回顾知识点mp4


49 8.02强化规则爬虫.mp4


50 8.03图片管道的应用.mp4


51 8.04说明自定义图片管道mp4


52 8.05scrapy中日志记录器mp4


53 8.06扩展解释器的excepthook.mp4


54 8.07自定义Selenium下载中间件mp4


55 9.01回顾知识点mp4


56 9.02分布式爬虫.mp4


57 9.03爬虫项目完整调试mp4


58 9.04Linux云服务器部署爬虫.mp4


59 9.05scrapyd部署爬虫.mp4


60 9.06docker部署爬虫项目.mp4


61 9.07crontab.mp4


62 10.01回顾知识点.mp4


63 10.02MongoDB的基本操作.mp4


64 10.03总结mongodb.mp4


65 10.04Mongo数据存储及Shell自动部署.mp4


视频教程截图:

phyton入门到精通视频教程_编程爬虫数据分析_零基础python自学全套教材

phyton入门到精通视频教程_编程爬虫数据分析_零基础python自学全套教材

phyton编程零基础自学入门到精通全套教程_编程爬虫数据分析培训下载地址
零基础Python48小时速成课
阿里网盘 / 课程大小:0.00字节
提取码:**** (购买后可见)
下载
评论下
  • 顺带评个分
提交
返回顶部