• Python主要模块和常用方法简览


    原文地址:http://blog.csdn.net/hwhjava/article/details/22284399


    PY核心模块方法
    1. os模块:

        os.remove()         #删除文件 
        os.unlink()         #删除文件 
        os.rename()         #重命名文件 
        os.listdir()        #列出指定目录下所有文件 
        os.chdir()          #改变当前工作目录
        os.getcwd()         #获取当前文件路径
        os.mkdir()          #新建目录
        os.rmdir()          #删除空目录(删除非空目录, 使用shutil.rmtree())
        os.makedirs()       #创建多级目录
        os.removedirs()     #删除多级目录
        os.stat(file)       #获取文件属性
        os.chmod(file)      #修改文件权限
        os.utime(file)      #修改文件时间戳
        os.name(file)       #获取操作系统标识
        os.system()         #执行操作系统命令
        os.execvp()         #启动一个新进程
        os.fork()           #获取父进程ID,在子进程返回中返回0
        os.execvp()         #执行外部程序脚本(Uinx)
        os.spawn()          #执行外部程序脚本(Windows)
        os.access(path, mode) #判断文件权限(详细参考cnblogs)
        os.wait()           #暂时未知
    

    2. os.path模块:

        os.path.split(filename)         #将文件路径和文件名分割(会将最后一个目录作为文件名而分离)
        os.path.splitext(filename)      #将文件路径和文件扩展名分割成一个元组
        os.path.dirname(filename)       #返回文件路径的目录部分
        os.path.basename(filename)      #返回文件路径的文件名部分
        os.path.join(dirname,basename)  #将文件路径和文件名凑成完整文件路径
        os.path.abspath(name)           #获得绝对路径
        os.path.splitunc(path)          #把路径分割为挂载点和文件名
        os.path.normpath(path)          #规范path字符串形式
        os.path.exists()                #判断文件或目录是否存在
        os.path.isabs()                 #如果path是绝对路径,返回True
        os.path.realpath(path)          #返回path的真实路径
        os.path.relpath(path[, start])  #从start开始计算相对路径   
        os.path.normcase(path)          #转换path的大小写和斜杠
        os.path.isdir()                 #判断name是不是一个目录,name不是目录就返回false
        os.path.isfile()                #判断name是不是一个文件,不存在返回false
        os.path.islink()                #判断文件是否连接文件,返回boolean
        os.path.ismount()               #指定路径是否存在且为一个挂载点,返回boolean
        os.path.samefile()              #是否相同路径的文件,返回boolean
        os.path.getatime()              #返回最近访问时间 浮点型
        os.path.getmtime()              #返回上一次修改时间 浮点型
        os.path.getctime()              #返回文件创建时间 浮点型
        os.path.getsize()               #返回文件大小 字节单位
        os.path.commonprefix(list)      #返回list(多个路径)中,所有path共有的最长的路径
        os.path.lexists                 #路径存在则返回True,路径损坏也返回True
        os.path.expanduser(path)        #把path中包含的"~"和"~user"转换成用户目录
        os.path.expandvars(path)        #根据环境变量的值替换path中包含的”$name”和”${name}”
        os.path.sameopenfile(fp1, fp2)  #判断fp1和fp2是否指向同一文件
        os.path.samestat(stat1, stat2)  #判断stat tuple stat1和stat2是否指向同一个文件
        os.path.splitdrive(path)        #一般用在windows下,返回驱动器名和路径组成的元组
        os.path.walk(path, visit, arg)  #遍历path,给每个path执行一个函数详细见手册
        os.path.supports_unicode_filenames()     #设置是否支持unicode路径名
    

    3. stat模块:

        #描述os.stat()返回的文件属性列表中各值的意义
        fileStats = os.stat(path)        #获取到的文件属性列表
        fileStats[stat.ST_MODE]          #获取文件的模式
        fileStats[stat.ST_SIZE]          #文件大小
        fileStats[stat.ST_MTIME]         #文件最后修改时间
        fileStats[stat.ST_ATIME]         #文件最后访问时间
        fileStats[stat.ST_CTIME]         #文件创建时间
        stat.S_ISDIR(fileStats[stat.ST_MODE])       #是否目录
        stat.S_ISREG(fileStats[stat.ST_MODE])       #是否一般文件
        stat.S_ISLNK(fileStats[stat.ST_MODE])       #是否连接文件
        stat.S_ISSOCK(fileStats[stat.ST_MODE])      #是否COCK文件
        stat.S_ISFIFO(fileStats[stat.ST_MODE])      #是否命名管道
        stat.S_ISBLK(fileStats[stat.ST_MODE])       #是否块设备
        stat.S_ISCHR(fileStats[stat.ST_MODE])       #是否字符设置
    

    4. sys模块:

        sys.argv                #命令行参数List,第一个元素是程序本身路径 
        sys.path                #返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值 
        sys.modules.keys()      #返回所有已经导入的模块列表
        sys.modules             #返回系统导入的模块字段,key是模块名,value是模块 
        sys.exc_info()          #获取当前正在处理的异常类,exc_type、exc_value、exc_traceback当前处理的异常详细信息
        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(详细使用参考文档)
    
    

    5. 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
    
        
    

    6. hashlib,md5模块:

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

    7. 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)  #从序列中随机获取指定长度的片断
     
    

    8. types模块:

        保存了所有数据类型名称。
        if type('1111') == types.StringType:
    

    9. 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
        
            
    

    10. atexit模块:

        atexit.register(fun,args,args2..)   #注册函数func,在解析器退出前调用该函数
    
    

    11. 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是要过虑的字符
        
    

    12. urllib模块:

        urllib.quote(string[,safe])             #对字符串进行编码。参数safe指定了不需要编码的字符
        urllib.unquote(string)                  #对字符串进行解码
        urllib.quote_plus(string[,safe])        #与urllib.quote类似,但这个方法用'+'来替换' ',而quote用'%20'来代替' '
        urllib.unquote_plus(string )            #对字符串进行解码
        urllib.urlencode(query[,doseq])         #将dict或者包含两个元素的元组列表转换成url参数。
                                                #例如 字典{'name':'wklken','pwd':'123'}将被转换为"name=wklken&pwd=123"
        urllib.pathname2url(path)               #将本地路径转换成url路径
        urllib.url2pathname(path)               #将url路径转换成本地路径
        urllib.urlretrieve(url[,filename[,reporthook[,data]]])  #下载远程数据到本地
            #filename:指定保存到本地的路径(若未指定该,urllib生成一个临时文件保存数据)
            #reporthook:回调函数,当连接上服务器、以及相应的数据块传输完毕的时候会触发该回调
            #data:指post到服务器的数据
        rulrs = urllib.urlopen(url[,data[,proxies]])     #抓取网页信息,[data]post数据到Url,proxies设置的代理
        urlrs.readline()    #跟文件对象使用一样
        urlrs.readlines()   #跟文件对象使用一样
        urlrs.fileno()      #跟文件对象使用一样
        urlrs.close()       #跟文件对象使用一样
        urlrs.info()        #返回一个httplib.HTTPMessage对象,表示远程服务器返回的头信息
        urlrs.getcode()     #获取请求返回状态HTTP状态码
        urlrs.geturl()      #返回请求的URL
    
    

    13. urllib2模块:

    14. urlparse模块: 

    15. re模块:

      正则表达式模块函数:《python核心编程》P472

    	import re                                       #导入re模块
    	re.compile(pattren, flags=0)                    #编译一个匹配正则表达式,返回一个匹配对象
    	re.match(pattern, string, flags=0)              #利用正则表达式匹配一个字符串,如果匹配到返回匹配到的对象,如果没有则返回空
    	re.search(pattern, string, flags=0)             #Scan through string looking for a match to the pattern, returning a match object, or None if no match was found.
    	re.findall(pattern, string, flags=0)            #Return a list of all non-overlapping matches in the string. If one or more groups are present in the pattern, return a list of groups; this will be a list of tuples if the pattern has more than one group.
    	re.sub(pattern, repl, string, count=0)          #将字符串中匹配正则表达式的部分替换为其他值
    	re.split(pattern, string, maxsplit=0)           #Split the source string by the occurrences of the pattern, returning a list containing the resulting substrings.
    	re.purge()                                      #Clear the regular expression cache
    	
    

    16. math,cmath模块:
      数学运算,复数运算函数

    17. operator模块:

      一些数值操作函数集合。参考CSDN收藏

    18. copy模块:

        copy.copy(a)        #复制对象
        copy.deepcopy(a)    #复制集合
     
    

    19. fileinput 模块:

      处理文件内容模块

    20. shutil 模块:

      包含一些复制文件和文件夹的函数

  • 相关阅读:
    【python】利用python+tkinter做一个简单的智能电视遥控器
    【selenium】自动化测试中,元素无法点击定位等问题的解决:js的使用方法
    《Selenium 2自动化测试实战 基于Python语言》中发送最新邮件无内容问题的解决方法
    单线程代码事例
    死锁的实例
    大公司的Java面试题集
    xml文件有误
    android开发艺术探索
    Java 获取APK安装程序的包名
    内部类中class声明地方不同,效果不一样
  • 原文地址:https://www.cnblogs.com/XXCXY/p/5179888.html
Copyright © 2020-2023  润新知