3个适合初学者的Python最佳实践,值得拥有!
云栖号:https://yqh.aliyun.com
第一手的上云资讯,不同行业精选的上云企业案例库,基于众多成功案例萃取而成的最佳实践,助力您上云决策!
我们常常分享编程其实很简单的文章,给大家树立信心。
如果只是编写简单的程序,如果你只是想马上完成,一天的时间即可完成。
但如果你想很快地编写复杂,却没有重构和注释几乎不可读的代码。对不起,面对现实吧,编码很难。
通常这种情况下,别人不得不帮你收拾烂摊子。
因此,为了增加可读性和可重用性,负责任的重组和记录代码非常重要。
这里小芯就给大家推荐3种编写Python的好方法,它们能帮你成为更好的程序员。
1. Docstring
Docstring 是Python文档字符串的英文缩写。Docstring是三重双引号 ”“”中,在所定义模块,函数,类或方法的第一个陈述。这是函数中docstring的最小示例。
deffoo(): """This function doesnothing.""" passprint(foo.__doc__) # Thisfunction does nothing.
函数的文档字符串应包含(一行)对目的的简短介绍,后面的段落描述了函数调用约定。样式多种多样,但这是我最喜欢的模板之一:
defsum_of_squares(nums): """ Compute the sum of squares of a list of numbers. Args: nums (`list` of `int` or `float`): A `list` of numbers. Returns: ans (`int` or `float`): Sum of squares of `nums`. Raises: AssertionError: If `nums` contain elements that are not floats nor ints. """ try: ans =sum([x**2for x in nums]) except: raiseAssertionError('Input should be a list of floats or ints.') return ans 由GitHub发起的rawdocstring.py
2. f-string(格式化字符串)
你可能习惯于使用以下命令格式化字符串,即%或者format().
name ='World' 'Hello %s' % name # Hello World 'Hello {}'.format(name) # Hello World
抛弃它们。 一旦你需要在更长的字符串中打印多个变量,该代码将很快变得混乱且难以理解。无论如何,这些格式化方法并不简单。
Pythonf-string是Python 3.6的引入的改变游戏规则的工具。这是一种可读且高级的字符串格式句法,将表达式嵌入字符串。这是通过语句f'{expr}'完成的; 其中表达式用f字符串内的大括号括起来。表达式在开头带有f,位于单引号之前。
示例:
name ='World' print(f'Hello{name}') # Hello World
可以在大括号内写任何在语法上有效的表达。还可以在表达式中调用函数!
a =[1,2.2,3] print(f'Sum of squares of {a} is {sum_of_squares(a)}') # Sum of squares of [1, 2.2, 3] is 14.84
3.命名惯例
命名事物是计算机科学中最困难的事情之一。你穷尽了所有想法。,却不知道如何命名临时中介变量。但你并不是唯一不会命名的人。
尽管很困难,Python中还是有一些命名惯例,来“缩小”命名变量时的选择范围的。它们有助于增强代码的一致性,可读性和可重用性。
因此,如果字母本身没有含义的话,你不应该再使用单个小写字母命名所有变量,例如a, x等等。另外,您应该使用有意义的,易于理解且容易被识别的单词命名它们,例如用user_profile 替换掉 uspr.
以下是有关事物命名的6条提示:
- 避免使用单个字母命名事物,例如O, I, l。原因很明显。
- 变量和函数名称都应该小写。
- 变量或函数名称中的单词应用下划线 _ 分开。
- 私有变量(例如在类内部)可能从一个下划线开始
- 类别名称中的单词应串联并大写,例如MarioKart。
- 常数名称应大写,如 GOLDEN_RATIO。
此列表不是绝对详尽的。命名变量可以说是编程中最难学习的内容之一。因此,在GitHub上阅读其他人的代码并学习他们的命名方法,是初学者的最佳途径。
一起来试试吧!
云栖号:https://yqh.aliyun.com
第一手的上云资讯,不同行业精选的上云企业案例库,基于众多成功案例萃取而成的最佳实践,助力您上云决策!
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
有记录以来物联网黑客攻击和漏洞的5个严重例子
云栖号:https://yqh.aliyun.com第一手的上云资讯,不同行业精选的上云企业案例库,基于众多成功案例萃取而成的最佳实践,助力您上云决策! 物联网黑客攻击威胁巨大,产生DDoS攻击,可以破坏我们的基础设施、系统和生活方式。 物联网难以避免遭黑客攻击。黑客可以通过渗透并利用成千上万个不安全的设备来发起DDoS攻击。它们可能破坏基础设施,让网络瘫痪,并且随着物联网进入我们的日常生活,这些攻击很可能使真实的人类生命处于危险之中。即使黑客并没有直接威胁生命,他们也可能会破坏网关和更深层次的IoT网络,以泄露和利用敏感的个人和公司信息。 专家预测,到2025年,将有750亿个联网的IoT设备。这些设备上运行的许多嵌入式固件都是不安全且高度脆弱的,从而使全世界不确定数量的关键系统和数据面临风险。 如果你在物联网领域,请继续阅读了解这些黑客和漏洞。他们会让你看到未来会是什么样子(而且很可能会是什么样子),并迅速思考为什么今天的设备必须是安全的。 以下是有记录以来物联网黑客攻击和漏洞的5个最坏例子。 1. Mirai僵尸网络(又名Dyn攻击) 早在2016年10月,有史以来最大的DDoS...
- 下一篇
就想写个爬虫,我到底要学多少东西啊?
云栖号:https://yqh.aliyun.com第一手的上云资讯,不同行业精选的上云企业案例库,基于众多成功案例萃取而成的最佳实践,助力您上云决策! 当今大数据的时代,网络爬虫已经成为了获取数据的一个重要手段。 但要学习好爬虫并没有那么简单。首先知识点和方向实在是太多了,它关系到了计算机网络、编程基础、前端开发、后端开发、App 开发与逆向、网络安全、数据库、运维、机器学习、数据分析等各个方向的内容,它像一张大网一样把现在一些主流的技术栈都连接在了一起。正因为涵盖的方向多,因此学习的东西也非常零散和杂乱,很多初学者搞不清楚究竟要学习哪些知识,学习过程中遇到反爬也不知道用什么方法来解决,本篇我们来做一些归纳和总结。 初学爬虫 一些最基本的网站,往往不带任何反爬措施。比如某个博客站点,我们要爬全站的话就顺着列表页爬到文章页,再把文章的时间、作者、正文等信息爬下来就可以了。 那代码怎么写呢?用 Python 的 requests 等库就够了,写一个基本的逻辑,顺着把一篇篇文章的源码获取下来,解析的话用 XPath、BeautifulSoup、PyQuery 或者正则表达式,或者粗暴的字符...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS7,CentOS8安装Elasticsearch6.8.6
- CentOS6,CentOS7官方镜像安装Oracle11G
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS8编译安装MySQL8.0.19
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Windows10,CentOS7,CentOS8安装Nodejs环境
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7