Python中怕遗忘的知识点总结(持续更新)

只有在形参表末尾的那些参数可以有默认参数值,即你不能在声明函数形参的时候,先声明有

默认值的形参而后声明没有默认值的形参。

这是因为赋给形参的值是根据位置而赋值的。例如,def func(a, b=5)是有效的,但是def func(a=5, b)是 无效 的。

 

 

 

注意,没有返回值的return语句等价于return None。None是Python中表示没有任何东西的特殊

类型。例如,如果一个变量的值为None,可以表示它没有值。

 

 

 

 

pass语句在Python中表示一个空的语句块。

def someFunction():

pass

 

 

 

 

文档字符串的惯例是一个多行字符串,它的首行以大写字母开始,句号结尾。第二行是空行,

从第三行开始是详细的描述。 强烈建议 你在你的函数中使用文档字符串时遵循这个惯例。

你可以使用__doc__(注意双下划线)调用printMax函数的文档字符串属性(属于函数的名称)

from..import语句

如果你想要直接输入argv变量到你的程序中(避免在每次使用它时打sys.),那么你可以使用

from sys import argv语句。如果你想要输入所有sys模块使用的名字,那么你可以使用from sys

import *语句。这对于所有模块都适用。一般说来,应该避免使用from..import而使用import语

句,因为这样可以使你的程序更加易读,也可以避免名称的冲突。

 

 ---------------------------------------------------

2017年9月4日更

对于大多数用户来说,第四个版本是一个满意的工作脚本了,但是它仍然有进一步改进的空
间。比如,你可以在程序中包含 交互 程度——你可以用-v选项来使你的程序更具交互性。
另一个可能的改进是使文件和目录能够通过命令行直接传递给脚本。我们可以通过sys.argv列表
来获取它们,然后我们可以使用list类提供的extend方法把它们加到source列表中去。
我还希望有的一个优化是使用tar命令替代zip命令。这样做的一个优势是在你结合使用tar和gzip
命令的时候,备份会更快更小。如果你想要在Windows中使用这些归档,WinZip也能方便地处
理这些.tar.gz文件。tar命令在大多数Linux/Unix系统中都是默认可用的。Windows用户也可以下
载安装它。
命令字符串现在将称为:
tar = 'tar -cvzf %s %s -X /home/swaroop/excludes.txt' % (target, ' '.join(srcdir))
选项解释如下:
● -c表示创建一个归档。
● -v表示交互,即命令更具交互性。
● -z表示使用gzip滤波器。
● -f表示强迫创建归档,即如果已经有一个同名文件,它会被替换。
● -X表示含在指定文件名列表中的文件会被排除在备份之外。例如,你可以在文件中指定
*~,从而不让备份包括所有以~结尾的文件。
重要
最理想的创建这些归档的方法是分别使用zipfile和tarfile。它们是Python标准库的一部分,可以
供你使用。使用这些库就避免了使用os.system这个不推荐使用的函数,它容易引发严重的错
误。
然而,我在本节中使用os.system的方法来创建备份,这纯粹是为了教学的需要。这样的话,例
子就可以简单到让每个人都能够理解,同时也已经足够用了。

 

posted @ 2017-08-25 15:15  云中摆渡的老船长  阅读(199)  评论(1编辑  收藏  举报

It's not who you are underneath, it's what you do that defines you

Brick walls are there for a reason :they let us prove how badly we want things