linux和python那个好学_3个Python优秀实践初学者值得拥有!
导读
这里小芯就给大家推荐3种编写Python的好方法,它们能帮你成为更好的程序员。
我们常常分享编程其实很简单的文章,给大家树立信心。
如果只是编写简单的程序,如果你只是想马上完成,一天的时间即可完成。
但如果你想很快地编写复杂,却没有重构和注释几乎不可读的代码。对不起,面对现实吧,编码很难。
通常这种情况下,别人不得不帮你收拾烂摊子。
因此,为了增加可读性和可重用性,负责任的重组和记录代码非常重要。
这里小芯就给大家推荐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条提示:
1. 避免使用单个字母命名事物,例如O, I, l。原因很明显。
2. 变量和函数名称都应该小写。
3. 变量或函数名称中的单词应用下划线 _ 分开。
4. 私有变量(例如在类内部)可能从一个下划线开始
5. 类别名称中的单词应串联并大写,例如MarioKart。
6. 常数名称应大写,如 GOLDEN_RATIO。
此列表不是绝对详尽的。命名变量可以说是编程中最难学习的内容之一。因此,在GitHub上阅读其他人的代码并学习他们的命名方法,是初学者的最佳途径。
linux和python那个好学_3个Python优秀实践初学者值得拥有!相关推荐
- Python编程好学吗 为什么Python如此受欢迎
Python编程好学吗?为什么Python如此受欢迎?Python的包装能力.可组合性.可嵌入性都很好,可以把各种复杂性包装在Python模块里,暴露出漂亮的接口.因此,Python自然是大受欢迎. ...
- java和python哪个好学-Java和Python的前景哪个更好 学习难度呢
2018年学Python发展前景怎么样?零基础如何学习Python? Java开发和Python开发哪个更好学?在过去 15年的时间里,Python一直呈现稳步上升的趋势,终于在前几年进入了 TIOB ...
- java和python哪个好学-Java VS Python 应该先学哪个?
http://www.tuicool.com/articles/fqAzqi Java 和 Python 是当下两种巨火的巨强大的编程语言,对于刚开始学习编程的同学来说,很是迷惑,最经常问得问题就是, ...
- python pdf库_3个Python PDF库,提取信息、转换格式、分割剪裁有它就够了!
Python无处不在,似乎支持从主要网站到桌面实用程序到企业软件的所有功能.Python已经被用来编写流行的软件项目,如dnf/yum.OpenStack.OpenShot.Blender.Calib ...
- python自动修图_3 行 Python 代码 5 秒抠图的 AI 神器,根本无需 PS
原标题:3 行 Python 代码 5 秒抠图的 AI 神器,根本无需 PS 文 | 苏克 1900@高级农名工 曾几何时,「抠图」是一个难度系数想当高的活儿,但今天要介绍的这款神工具,只要 3 行代 ...
- python新奇检测_3种Python检测URL状态
需求:Python检测URL状态,并追加保存200的URL 代码一: #! /usr/bin/env python #coding=utf-8 import sys import requests d ...
- python调用脚本_3种python调用其他脚本的方法
1.用python调用python脚本 #!/usr/local/bin/python3.7 import time import os count = 0 str = ('python b.py') ...
- 提高python 程序运行速度_3个Python函数帮程序员们避免编写循环,提高运行速度...
图源:wired 诞生于1991年的Python,这几年突然火了.简历上有了Python,就业竞争力瞬间提升,甚至一些小学教材上都出现了Python内容.这种语言的热度超过了以往任何时候. 作为21世 ...
- python好学吗一般要学多久-Python好学吗?精通Python需要多长时间?
说起编程语言,想必Python是非常受欢迎的一门技术,目前Python在市场上占据了重要的作用,不少企业都在使用Python语言,因此让更多人都看中了Python前景,想要加入其中.那么Python真 ...
最新文章
- 汇总|计算机摄影学资源,涉及视频、书籍以及国内外著名实验室
- 理解与理论:人工智能基础问题的悲观与乐观
- mysql sql语句大全
- 每天一道LeetCode-----判断给定字符串是否符合某个模式
- [转]notepad++ java编码,输出中文字符时,编译出错
- html中内联元素和块级元素的区别(整理版)
- 求Sn = a+aa+aaa+...+aaaaaa(n个a),其中a是一个数字,n代表a的位数,例如 2+22+222+2222+22222(此时n=5),n由键盘输入。
- 数据库常用日期统计查询
- 从80年代初到2003年末中国出现的街头骗术
- 控制台Tomcat Locahost log输出No Spring WebApplicationIn
- 数组排序之冒泡法和选择法
- 流量上不去?那是因为你不会这招标题优化技巧
- 黄金分割搜索法求单峰极小值C++实现
- 动画交互应用——星球引力
- Web前端大作业—里约热内卢奥运会(html+css+javascript)
- 【第25期】浅析车联网信息安全意识|AutoSec汽车安全直播课
- vue-element-admin--使用体验
- 5言律诗-望月(原创新作)
- 用计算机弹追光使者,【B型】追光使者-洛天依(完整版歌词附)
- 22、综合布线工程常用设备材料介绍及施工注意事项
热门文章
- cesium 实现雨雪雾效果
- python3 word转pdf
- win7计算机没有光驱图标不见了,win7系统光驱图标消失怎么办
- win7计算机管理中设备管理器其他设备pcl感叹号 没声音,Win7设备管理器驱动出现感叹号怎么办?...
- 混乱与秩序2服务器维护,混沌与秩序2救赎世界BOSS刷新位置时间大全
- MLX90360LGO-ACD-000-RE 可编程位置传感器
- 如何正确估计期权的Greeks?
- js面向对象(三)---组件开发
- 1、大家都是怎么看网工的,就这么看不起网络工程师吗?
- Unity接入科大讯飞的语音sdk