01 2018 档案
摘要:1、进程 #进程(Process,有时被称为重量级进程)是程序的一次执行。每个进程都有自己的地址空间、内存、数据栈以及记录运行轨迹的辅助数据,操作系统管理运行的所有进程,并为这些进程公平分配时间。进程可以通过fork和spawn操作完成其他任务。因为各个进程有自己的内存空间、数据栈等,所以只能使用进
阅读全文
摘要:#在运行程序的过程中,所有变量都在内存中,我们把变量从内存中变成可存储或传输的过程称为序列化。我们可以把序列化后的内容写入磁盘,或者通过网络传输到别的机器上。反过来,把变量内容从序列化的对象重新独到内存里称为反序列化。 #序列化是指将数据结构或对象转换成二进制串的过程。 #反序列化是指将序列化过程中
阅读全文
摘要:#数据的读取除了通过文件,还可以在内存中进行。Python中的io模块提供了对str操作的StringIO函数。 #要把str写入StringIO,我们需要创建一个StringIO,然后像文件一样写入。操作示例如下: 1 #!/usr/bin/python3 2 #-*-coding:UTF-8-*
阅读全文
摘要:#前面了解了文件的基本操作方法。在实际应用中,对文件内容进行迭代和重复执行操作是比较常见的操作。 #所谓迭代,是指不断重复某一个动作,直到这些动作都完成为止。 1、按字节处理 #在while循环中,read方法是最常见的对文件内容进行迭代的方法,例如: 1 #!/usr/bin/python3 2
阅读全文
摘要:#前面了解了打开文件的open函数,也做了一些简单的示例,接下来介绍一些基本文件方法,在开始介绍之前,首先了解一下流的概念。 #I/O编程中,Stream(流)是一个很重要的概念。可以把流想象成一个水管,数据就是水管里的水,但是只能单向流动。Input Stream就是数据从外面(磁盘、网络)流进内
阅读全文
摘要:#在Python中,打开文件使用的是open函数。open函数的基本语法如下: 1 open(file_name[,access_mode][,buffering]) #参数解析 #file_name变量:是一个包含要访问的文件名称的字符串值。 #access_mode变量:指打开文件的模式,对应有
阅读全文
摘要:1、什么是正则表达式? 答:正则表达式是一个特殊字符序列,能帮助用户检查一个字符串是否与某种模式匹配,从而达成快速检索或替换符合某个模式、规则的文本。 2、re模块中的match函数和search方法怎么使用,两者的区别是什么? 答: match:re.match函数只匹配字符串开始的字符,如果开始
阅读全文
摘要:#当我们在Python中使用正则表达式时,re模块内部会做两件事情: 1、编译正则表达式,如果正则表达式的字符串本身不合法,就会报错。 2、用编译后的正则表达式匹配字符串。 #如果一个正则表达式需要重复使用几千次,出于效率的考虑,我们可以预编译该正则表达式,这样重复使用时就不需要编译这个步骤,直接匹
阅读全文
摘要:#Python的re模块提供了re.sub,用于替换字符串中的匹配项。 #sub(repl,string[,count])|re.sub(pattern,repl,string[,count]):使用repl替换string中每一个匹配的子串后返回替换后的字符串。当repl是一个方法时,这个方法应当
阅读全文
摘要:#正则表达式通常使用于查找匹配的字符串。Python里数量词默认是贪婪的(在少数语言里也可能默认是非贪婪),总是尝试匹配尽可能多的字符;非贪婪模式刚好相反,总是尝试匹配尽可能少的字符。 #例如,正则表达式"ab*"如果用于查找"abbbc",就会找到"abbb"。如果使用非贪婪的数量词"ab*?",
阅读全文
摘要:#经过前面的知识储备,我们可以在Python中使用正则表达式了。Python通过re模块提供对正则表达式的支持。 1、re.match函数 #一般使用re的步骤是先将正则表达式的字符串形式编译为Pattem实例,然后使用Pattem实例处理文本并获得匹配结果(一个match函数),最后使用match
阅读全文
摘要:#正则表达式是一个特殊字符序列,能帮助用户检查一个字符串是否与某种模式匹配,从而达成快速检索或替换符合某个模式、规则的文本。例如,可以在文档中使用一个正则表达式表达式表示特定文字,然后将其全部删除或替换成别的文字。 #Python自1.5版本起增加了re模块,它提供了perl风格的正则表达式模块,r
阅读全文
摘要:1、在Python中,通常用哪3种方式表示时间? 答: 1 在Python中,通常用时间戳、格式化的时间字符串和元组3种方式表示时间 2、time模块有哪些常用方法,都如何使用? 答: 1 ①time()函数用于返回当前时间的时间戳。 time.time() 2 ②localtime()函数的作用是
阅读全文
摘要:#日历(calendar)模块的函数都与日历相关,如输出某月的字符月历。星期一默认是每周的第一天,星期天是默认的最后一天。更改设置需调用calendar.setfirstweekday()函数,模块包含以下内置函数。 1、calendar.calendar(year,w=2,l=1,c=6) #该函
阅读全文
摘要:#datetime是date与time的结合体,包括date与time的所有信息。datetime的功能强大,支持0001年到9999年。 #datetime模块定义了两个常量:datetime.MINYEAR和datetime.MAXYEAR。这两个常量分别表示datetime所能表示的最小、最大
阅读全文
摘要:#前面已经了解了时间的基本概念,接着将具体了解time模块中的一些常用函数。time模块的内置函数有做时间处理的,也有转换时间格式的。 1、time()函数 #time()函数用于返回当前时间的时间戳(1970年01月01日08时00分00秒到现在的浮点秒数)。 #time()函数的语法如下: ti
阅读全文
摘要:#在代码中,我们常常需要和时间打交道。在Python中,与时间处理有关的模块包括time、datetime以及calendar. #在Python中,通常用时间戳、格式化的时间字符串和元组3中方式表示时间。下面分别进行讲解。 1、时间戳 #通常,时间戳(timestamp)表示从1970年1月1日0
阅读全文
摘要:#异常和函数能够很自然的一起工作。如果异常在函数内引发而不处理,就会被传播至函数调用的地方。如果异常在函数调用的地方也没有被调用,就会继续传播,一直达到主程序。 #如果主程序也没有做异常处理,异常就会被Python解释器捕获,输出一个错误信息,然后退出程序。 #例如: #例如: 1 2 #!/usr
阅读全文
摘要:#Python中的finally子句需要和try子句一起使用,组成try/finally的语句形式,try/finally语句无论发生异常与否都将执行最后的代码。 #示例如下: 1 #!/usr/bin/python3 2 #-*-coding:UTF-8-*- 3 #异常9.10_finally
阅读全文
摘要:#尽管内建异常类包括了大部分异常,而且可以满足很多要求,但有时还是要自己创建自己的异常类。比如要精确知道问题的根源,就需要使用自定义异常精确定位问题。可以通过创建一个新exception类拥有自己的异常。异常应该继承自Exception类,可以直接继承,也可以间接继承。 #因为错误就是类,捕获一个错
阅读全文
摘要:#如果程序执行完异常还需要做其他事情,该怎么做呢? #异常为我们提供了try..except...else语句实现该功能,语法如下: 1 try: 2 <语句> #运行别的代码 3 except<名字>: 4 <语句> #如果在try部分引发了异常1 5 except<名字>,<数据>: 6 <语句
阅读全文
摘要:#前面了解了很多异常,是否所有异常都可以捕捉的呢?其实并非如此。如下示例: 1 #!/usr/bin/python3 2 #-*-coding:UTF-8-*- 3 #异常9.7 4 5 def model_exception(x,y): 6 try: 7 a=x/y 8 b=name 9 exce
阅读全文