我们常常分享编程其实很简单的文章,给大家树立信心。 如果只是编写简单的程序,如果你只是想马上完成,一天的时间即可完成。 但如果你想很快地编写复杂,却没有重构和注释几乎不可读的代码。对不起,面对现实吧,编码很难。 通常这种情况下,别人不得不帮你收拾烂摊子。 因此,为了增加可读性和可重用性,负责任的重组和记录代码非常重要。 这里小芯就给大家推荐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.843.命名惯例
命名事物是计算机科学中最困难的事情之一。你穷尽了所有想法。,却不知道如何命名临时中介变量。但你并不是唯一不会命名的人。 尽管很困难,Python中还是有一些命名惯例,来“缩小”命名变量时的选择范围的。它们有助于增强代码的一致性,可读性和可重用性。 因此,如果字母本身没有含义的话,你不应该再使用单个小写字母命名所有变量,例如a, x等等。另外,您应该使用有意义的,易于理解且容易被识别的单词命名它们,例如用user_profile 替换掉 uspr. 以下是有关事物命名的6条提示:
1. 避免使用单个字母命名事物,例如O, I, l。原因很明显。
2. 变量和函数名称都应该小写。
3. 变量或函数名称中的单词应用下划线 _ 分开。
4. 私有变量(例如在类内部)可能从一个下划线开始
5. 类别名称中的单词应串联并大写,例如MarioKart。
6. 常数名称应大写,如 GOLDEN_RATIO。 此列表不是绝对详尽的。命名变量可以说是编程中最难学习的内容之一。因此,在GitHub上阅读其他人的代码并学习他们的命名方法,是初学者的最佳途径。
|