“Python先求值not操做符,而后是and操做符,而后是or操做符。”正则表达式
什么是标准库? “Python也包括一组模块,称为“标准库”。每一个模块都是一个Python程序,包含一组相关的函数,能够嵌入你的程序之中。例如,math模块有数学运算相关的函数,random模块有随机数相关的函数,等等。”编程
咱们可使用 import 模块名和 from 模块名称 import 函数。在使用第二种方式的时候不须要模块前缀,可是推荐使用第一种方式,由于完整的名称会增长代码的可读性。小程序
“随着你得到更多的编程经验,经常会发现本身在为代码“消除重复”,即去除一些重复或复制的代码。消除重复可以使程序更短、更易读、更容易更新。”dom
“在Python中有一个值称为None,它表示没有值。None是NoneType数据类型的惟一值(其余编程语言可能称这个值为null、nil或undefined)。就像布尔值True和False同样,None必须大写首字母N。” “在幕后,对于全部没有return语句的函数定义,Python都会在末尾加上return None。”编程语言
“Python有不一样的做用域,而不是让全部东西都成全局变量,这是有理由的。这样一来,当特定函数调用中的代码修改变量时,该函数与程序其余部分的交互,只能经过它的参数和返回值。这缩小了可能致使缺陷的代码做用域。若是程序只包含全局变量,又有一个变量赋值错误的缺陷,那就很难追踪这个赋值错误发生的位置。它可能在程序的任何地方赋值,而你的程序可能有几百到几千行!但若是缺陷是由于局部变量错误赋值,你就会知道,只有那一个函数中的代码可能产生赋值错误。” “虽然在小程序中使用全局变量没有太大问题,但当程序变得愈来愈大时,依赖全局变量就是一个坏习惯。” “当程序执行在全局做用域中时,不存在局部做用域,因此不会有任何局部变量。这就是为何只有全局变量能用于全局做用域。”函数
“一般,对于一个函数,你要知道的就是它的输入值(变元)和输出值。你并不是老是须要加剧本身的负担,弄清楚函数的代码实际是怎样工做的。若是以这种高层的方式来思考函数,一般你们会说,你将该函数当作是一个黑盒。 这个思想是现代编程的基础。本书后面的章节将向你展现一些模块,其中的函数是由其余人编写的。尽管你在好奇的时候也能够看一看源代码,但为了能使用它们,你并不须要知道它们是如何工做的。并且,由于鼓励在编写函数时不使用全局变量,你一般也没必要担忧函数的代码会与程序的其余部分发生交叉影响。”this
pyperclip模块有copy()和paste()函数,能够向计算机的剪贴板发送文本,或从它接收文本。将程序的输出发送到剪贴板,使它很容易粘贴到邮件、文字处理程序或其余软件中。pyperclip模块不是Python自带的。要安装它,请听从附录A中安装第三方模块的指南。安装pyperclip模块后,在交互式环境中输入如下代码:spa
>>> import pyperclip
>>> pyperclip.copy('Hello world!')
>>> pyperclip.paste()
'Hello world!'
复制代码
固然,若是你的程序以外的某个程序改变了剪贴板的内容,paste()函数就会返回它。例如,若是我将这句话复制到剪贴板,而后调用paste(),看起来就会像这样:code
>>> pyperclip.paste()
'For example, if I copied this sentence to the clipboard and then called
paste(), it would look like this:”
复制代码
有一个可选的字符串参数,指定两边的哪些字符应该删除。在交互式环境中输入如下代码:ip
>>> spam = 'SpamSpamBaconSpamEggsSpamSpam'
>>> spam.strip('ampS')
'BaconSpamEggs'
复制代码
向strip()方法传入参数'ampS',告诉它在变量中存储的字符串两端,删除出现的a、m、p和大写的S。传入strip()方法的字符串中,字符的顺序并不重要:strip('ampS')作的事情和strip('mapS')或strip('Spam')同样。”