• python中常用模块


    OS模块

    python编程时,经常和文件、目录打交道,这是就离不了os模块。os模块包含普遍的操作系统功能,与具体的平台无关os.name()——判断现在正在实用的平台,Windows 返回 ‘nt'; Linux 返回’posix'os.getcwd()——得到当前工作的目录

    os.getcwd()              #获取当前工作目录,即当前python脚本工作的目录路径
    os.chdir("dirname")            #改变当前脚本工作目录;相当于shell下cd
    os.curdir                #返回当前目录: ('.')
    os.pardir                #获取当前目录的父目录字符串名:('..')
    os.makedirs('dirname1/dirname2')     #可生成多层递归目录
    os.removedirs('dirname1')          #若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
    os.mkdir('dirname')            #生成单级目录;相当于shell中mkdir dirname
    os.rmdir('dirname')           #删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir dirname
    os.listdir('dirname')           #列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
    os.remove()                #删除一个文件
    os.rename("oldname","newname")    #重命名文件/目录
    os.stat('path/filename')          #获取文件/目录信息
    os.sep                 #输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"
    os.linesep                #输出当前平台使用的行终止符,win下为"	
    ",Linux下为"
    "
    os.pathsep               #输出用于分割文件路径的字符串
    os.name                #输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
    os.system("bash command")       #运行shell命令,直接显示
    os.environ                #获取系统环境变量
    os.path.abspath(path)                    #返回path规范化的绝对路径
    os.path.split(path)            #将path分割成目录和文件名二元组返回
    os.path.dirname(path)           #返回path的目录。其实就是os.path.split(path)的第一个元素
    os.path.basename(path)          #返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素
    os.path.exists(path)            #如果path存在,返回True;如果path不存在,返回False
    os.path.isabs(path)           #如果path是绝对路径,返回True
    os.path.isfile(path)             #如果path是一个存在的文件,返回True。否则返回False
    os.path.isdir(path)             #如果path是一个存在的目录,则返回True。否则返回False
    os.path.join(path1[, path2[, ...]])      # 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
    os.path.getatime(path)          #返回path所指向的文件或者目录的最后存取时间
    os.path.getmtime(path)         #返回path所指向的文件或者目录的最后修改时间
    

      

    sys模块 

    sys.argv                    #命令行参数List,第一个元素是程序本身路径
    sys.exit(n)                #退出程序,正常退出时exit(0)
    sys.version                #获取Python解释程序的版本信息
    sys.path                   #返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
    sys.platform               #返回操作系统平台名称
    sys.stdout.write('please:')
    sys.exit(n)             退出程序,正常退出时exit(0)  
    sys.hexversion          获取Python解释程序的版本值,16进制格式如:0x020403F0  
    sys.version             获取Python解释程序的版本信息  
    sys.platform            返回操作系统平台名称  
    sys.stdout              标准输出  
    sys.stdout.write('aaa') 标准输出内容  
    sys.stdout.writelines() 无换行输出  
    sys.stdin               标准输入  
    sys.stdin.read()        输入一行  
    sys.stderr              错误输出  
    sys.exc_clear()         用来清除当前线程所出现的当前的或最近的错误信息   
    sys.exec_prefix         返回平台独立的python文件安装的位置   
    sys.byteorder           本地字节规则的指示器,big-endian平台的值是'big',little-endian平台的值是'little'   
    sys.copyright           记录python版权相关的东西   
    sys.api_version         解释器的C的API版本   
    sys.version_info        'final'表示最终,也有'candidate'表示候选,表示版本级别,是否有后继的发行   
    sys.getdefaultencoding()        返回当前你所用的默认的字符编码格式   
    sys.getfilesystemencoding()     返回将Unicode文件名转换成系统文件名的编码的名字   
    sys.builtin_module_names        Python解释器导入的内建模块列表   
    sys.executable                  Python解释程序路径   
    sys.getwindowsversion()         获取Windows的版本   
    sys.stdin.readline()            从标准输入读一行,sys.stdout.write("a") 屏幕输出a  
    sys.setdefaultencoding(name)    用来设置当前默认的字符编码(详细使用参考文档)   
    sys.displayhook(value)          如果value非空,这个函数会把他输出到sys.stdout(详细使用参考文档)  
    

      

    正则re模块

    '.'     默认匹配除
    之外的任意一个字符,若指定flag DOTALL,则匹配任意字符,包括换行
    '^'     匹配字符开头,若指定flags MULTILINE,这种也可以匹配上(r"^a","
    abc
    eee",flags=re.MULTILINE)
    '$'     匹配字符结尾,或e.search("foo$","bfoo
    sdfsf",flags=re.MULTILINE).group()也可以
    '*'     匹配*号前的字符0次或多次,re.findall("ab*","cabb3abcbbac")  结果为['abb', 'ab', 'a']
    '+'     匹配前一个字符1次或多次,re.findall("ab+","ab+cd+abb+bba") 结果['ab', 'abb']
    '?'     匹配前一个字符1次或0次
    '{m}'   匹配前一个字符m次
    '{n,m}' 匹配前一个字符n到m次,re.findall("ab{1,3}","abb abc abbcbbb") 结果'abb', 'ab', 'abb']
    '|'     匹配|左或|右的字符,re.search("abc|ABC","ABCBabcCD").group() 结果'ABC'
    '(...)' 分组匹配,re.search("(abc){2}a(123|456)c", "abcabca456c").group() 结果 abcabca456c
     
     
    'A'    只从字符开头匹配,re.search("Aabc","alexabc") 是匹配不到的
    ''    匹配字符结尾,同$
    'd'    匹配数字0-9
    'D'    匹配非数字
    'w'    匹配[A-Za-z0-9]
    'W'    匹配非[A-Za-z0-9]
    's'     匹配空白字符、	、
    、
     , re.search("s+","ab	c1
    3").group() 结果 '	'
    

    datetime,date,time模块  

       datetime.date.today()           本地日期对象,(用str函数可得到它的字面表示(2014-03-24))  
        datetime.date.isoformat(obj)    当前[年-月-日]字符串表示(2014-03-24)  
        datetime.date.fromtimestamp()   返回一个日期对象,参数是时间戳,返回 [年-月-日]  
        datetime.date.weekday(obj)      返回一个日期对象的星期数,周一是0  
        datetime.date.isoweekday(obj)   返回一个日期对象的星期数,周一是1  
        datetime.date.isocalendar(obj)  把日期对象返回一个带有年月日的元组  
        datetime对象:  
        datetime.datetime.today()       返回一个包含本地时间(含微秒数)的datetime对象 2014-03-24 23:31:50.419000  
        datetime.datetime.now([tz])     返回指定时区的datetime对象 2014-03-24 23:31:50.419000  
        datetime.datetime.utcnow()      返回一个零时区的datetime对象  
        datetime.fromtimestamp(timestamp[,tz])      按时间戳返回一个datetime对象,可指定时区,可用于strftime转换为日期表示   
        datetime.utcfromtimestamp(timestamp)        按时间戳返回一个UTC-datetime对象  
        datetime.datetime.strptime('2014-03-16 12:21:21',"%Y-%m-%d %H:%M:%S") 将字符串转为datetime对象  
        datetime.datetime.strftime(datetime.datetime.now(), '%Y%m%d %H%M%S') 将datetime对象转换为str表示形式  
        datetime.date.today().timetuple()           转换为时间戳datetime元组对象,可用于转换时间戳  
        datetime.datetime.now().timetuple()  
        time.mktime(timetupleobj)                   将datetime元组对象转为时间戳  
        time.time()                     当前时间戳  
        time.localtime  
        time.gmtime   
    

    hashlib,md5模块 

        hashlib.md5('md5_str').hexdigest()      对指定字符串md5加密  
        md5.md5('md5_str').hexdigest()          对指定字符串md5加密  
    

    random模块

        random.random()             产生0-1的随机浮点数  
        random.uniform(a, b)        产生指定范围内的随机浮点数  
        random.randint(a, b)        产生指定范围内的随机整数  
        random.randrange([start], stop[, step]) 从一个指定步长的集合中产生随机数  
        random.choice(sequence)     从序列中产生一个随机数  
        random.shuffle(x[, random]) 将一个列表中的元素打乱  
        random.sample(sequence, k)  从序列中随机获取指定长度的片断  
    

    MySQLdb模块

        MySQLdb.get_client_info()           获取API版本  
        MySQLdb.Binary('string')            转为二进制数据形式  
        MySQLdb.escape_string('str')        针对mysql的字符转义函数  
        MySQLdb.DateFromTicks(1395842548)   把时间戳转为datetime.date对象实例  
        MySQLdb.TimestampFromTicks(1395842548)   把时间戳转为datetime.datetime对象实例  
        MySQLdb.string_literal('str')       字符转义  
        MySQLdb.cursor()游标对象上的方法:《python核心编程》P624 
    

    string模块

       str.capitalize()            把字符串的第一个字符大写  
        str.center(width)           返回一个原字符串居中,并使用空格填充到width长度的新字符串  
        str.ljust(width)            返回一个原字符串左对齐,用空格填充到指定长度的新字符串  
        str.rjust(width)            返回一个原字符串右对齐,用空格填充到指定长度的新字符串  
        str.zfill(width)            返回字符串右对齐,前面用0填充到指定长度的新字符串  
        str.count(str,[beg,len])    返回子字符串在原字符串出现次数,beg,len是范围  
        str.decode(encodeing[,replace]) 解码string,出错引发ValueError异常  
        str.encode(encodeing[,replace]) 解码string  
        str.endswith(substr[,beg,end])  字符串是否以substr结束,beg,end是范围  
        str.startswith(substr[,beg,end])  字符串是否以substr开头,beg,end是范围  
        str.expandtabs(tabsize = 8)     把字符串的tab转为空格,默认为8个  
        str.find(str,[stat,end])        查找子字符串在字符串第一次出现的位置,否则返回-1  
        str.index(str,[beg,end])        查找子字符串在指定字符中的位置,不存在报异常  
        str.isalnum()               检查字符串是否以字母和数字组成,是返回true否则False  
        str.isalpha()               检查字符串是否以纯字母组成,是返回true,否则false  
        str.isdecimal()             检查字符串是否以纯十进制数字组成,返回布尔值  
        str.isdigit()               检查字符串是否以纯数字组成,返回布尔值  
        str.islower()               检查字符串是否全是小写,返回布尔值  
        str.isupper()               检查字符串是否全是大写,返回布尔值  
        str.isnumeric()             检查字符串是否只包含数字字符,返回布尔值  
        str.isspace()               如果str中只包含空格,则返回true,否则FALSE  
        str.title()                 返回标题化的字符串(所有单词首字母大写,其余小写)  
        str.istitle()               如果字符串是标题化的(参见title())则返回true,否则false  
        str.join(seq)               以str作为连接符,将一个序列中的元素连接成字符串  
        str.split(str='',num)       以str作为分隔符,将一个字符串分隔成一个序列,num是被分隔的字符串  
        str.splitlines(num)         以行分隔,返回各行内容作为元素的列表  
        str.lower()                 将大写转为小写  
        str.upper()                 转换字符串的小写为大写  
        str.swapcase()              翻换字符串的大小写  
        str.lstrip()                去掉字符左边的空格和回车换行符  
        str.rstrip()                去掉字符右边的空格和回车换行符  
        str.strip()                 去掉字符两边的空格和回车换行符  
        str.partition(substr)       从substr出现的第一个位置起,将str分割成一个3元组。  
        str.replace(str1,str2,num)  查找str1替换成str2,num是替换次数  
        str.rfind(str[,beg,end])    从右边开始查询子字符串  
        str.rindex(str,[beg,end])   从右边开始查找子字符串位置   
        str.rpartition(str)         类似partition函数,不过从右边开始查找  
        str.translate(str,del='')   按str给出的表转换string的字符,del是要过虑的字符  
    

    shutil模块 

    shutil.copyfile( src, dst)   #从源src复制到dst中去。 如果当前的dst已存在的话就会被覆盖掉
    shutil.move( src, dst)  #移动文件或重命名
    shutil.copymode( src, dst) #只是会复制其权限其他的东西是不会被复制的
    shutil.copystat( src, dst) #复制权限、最后访问时间、最后修改时间
    shutil.copy( src, dst)  #复制一个文件到一个文件或一个目录
    shutil.copy2( src, dst)  #在copy上的基础上再复制文件最后访问时间与修改时间也复制过来了,类似于cp –p的东西
    shutil.copy2( src, dst)  #如果两个位置的文件系统是一样的话相当于是rename操作,只是改名;如果是不在相同的文件系统的话就是做move操作
    shutil.copytree( olddir, newdir, True/Flase) #把olddir拷贝一份newdir,如果第3个参数是True,则复制目录时将保持文件夹下的符号连接,如果第3个参数是False,则将在复制的目录下生成物理副本来替代符号连接
    shutil.rmtree( src )   #递归删除一个目录以及目录内的所有内容
    

      

      

      

  • 相关阅读:
    301重定向将不带www的域名跳转到www的域名,403 Forbidden You don’t have permission to access the URL on this server
    js中几种动态创建元素并设置文本内容的比较,及性能测试。
    一道面试题:js返回函数, 函数名后带多个括号的用法及join()的注意事项
    js node.children与node.childNodes与node.firstChild,node,lastChild之间的关系
    js中继承的实现,原型链的知识点归纳,借用构造函数,组合继承(伪经典继承)
    前端知识点总结(HTML篇2)
    Css 编码规范
    两列布局:6种方法
    面试题--1
    前端知识点总结(综合篇)
  • 原文地址:https://www.cnblogs.com/yuanqiangfei/p/8111226.html
Copyright © 2020-2023  润新知