python-day5
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-day5相关的知识,希望对你有一定的参考价值。
python的学习进入了第五天,感觉越来越力不从心了。。。特别是作业环节,因为本身不是编程出身,写的本来就少,常常面对作业有种不知从何下手的感觉,这样的感觉越强烈,完成作业的愿望就越低,工作也越来越忙了,希望自己不会落下的太多吧。。
正则的深入
本周对于正则表达式做了更近一步的学习
1.compile的使用方法
import re p = re.compile("[0-9]") m = p.match(‘14534Abc‘) print(m.group()) 输出结果:1
配置match的方法,筛选出,输入的字符串中需要进行匹配的字段
2.使用正则来匹配IP地址的例子
string =‘192.168.22.222‘ m = re.match(‘([0-9]{1,3}\.){3}\d{1,3}‘,string) print(m.group()) 输出结果:192.168.22.222
使用正则通过每个.之间的数字进行IP地址的匹配,这个例子比较简单,并没有对每个数字的大小进行判断(大于255时不能作为IP地址)
冒泡排序法
算法之一的冒泡排序法,通过对一端无序的数组的排序,将数组从小到大进行排序的一种方法
data = [10,4,33,21,54,3,8,11,5,22,2,1,17,13,6] a = 1 while a < len(data): for i in range(len(data)-a): if data[i] > data[i+1]: tmp = data[i+1] data[i+1] = data[i] data[i] = tmp a += 1 print(data) 输出结果:[1, 2, 3, 4, 5, 6, 8, 10, 11, 13, 17, 21, 22, 33, 54]
通过代码可以看到,简单的思路为将数组中的前后2个数字进行比较,如果前一个数字大于后一个数字,则交换2个数字的位置,如果前一个数字小于后一个数字,则不交换2个数字的位置,继续使用大的数字和后一个数字进行比较,直到最大的数值被放到数组的最后一个位置上为止,然后在外部再进行一个大的循环,对内部的数字比较循环进行重复
模块模块是python中非常重要的一个内容,模块可以是内置的,也可以是第三方的,更可以是由用户自行定义的
1.模块的引用
在Python中用关键字import来引入某个模块,比如要引用模块math,就可以在文件最开始的地方用import math来引入。在调用math模块中的函数时,必须这样引用:
模块名.函数名
为什么必须加上模块名这样调用呢?因为可能存在这样一种情况:在多个模块中含有相同名称的函数,此时如果只是通过函数名来调用,解释器无法知道到底要调用哪个函数。所以如果像上述这样引入模块的时候,调用函数必须加上模块名。
import math #这样会报错 print sqrt(2) #这样才能正确输出结果 print math.sqrt(2)
有时候我们只需要用到模块中的某个函数,只需要引入该函数即可,此时可以通过语句
from 模块名 import 函数名1,函数名2....
来实现,当然可以通过不仅仅可以引入函数,还可以引入一些常量。通过这种方式引入的时候,调用函数时只能给出函数名,不能给出模块名,但是当两个模 块中含有相同名称函数的时候,后面一次引入会覆盖前一次引入。也就是说假如模块A中有函数function( ),在模块B中也有函数function( ),如果引入A中的function在先、B中的function在后,那么当调用function函数的时候,是去执行模块B中的function函 数。
如果想一次性引入math中所有的东西,还可以通过from math import *来实现,但是不建议这么做。
2.定义自己的模块
在Python中,每个Python文件都可以作为一个模块,模块的名字就是文件的名字。
比如有这样一个文件test.py,在test.py中定义了函数add:
#test.py def add(a,b): return a+b
那么在其他文件中就可以先import test,然后通过test.add(a,b)来调用了,当然也可以通过from test import add来引入
Time模块
作为一个时间模块,time模块的用处还是很广泛的
import time print(time.clock()) print(time.process_time()) print(time.time()) print(time.ctime()) print(time.ctime(time.time()-86640)) print(time.ctime(21312414)) print(time.gmtime()) print(time.localtime()) a = time.localtime() print(a.tm_year) print(a.tm_mon) print(time.localtime(time.time())) print(time.mktime(time.localtime())) print(time.gmtime()) print(time.strftime(‘%Y-%m-%d %H:%M:%S‘)) print(time.strptime(‘2016-5-30 10:50:06‘,‘%Y-%m-%d %H:%M:%S‘))
以上是关于python-day5的主要内容,如果未能解决你的问题,请参考以下文章