time模块 os模块 序列化模块 sys模块

一,  impoert  time 模块

      简单的说了解两个过程:   (1)时间戳时间                  ==(localtime)==>      结构化时间      ==(strftime)==>         字符串,格式化时间 

                                                     ret = time.localtime(20000000)              ret1 = time.strftime('%Y-%m-%d %H:%M:%S',ret)            print(ret1)      指定时间戳格式化

                                                     ret = time.localtime()                  ret1 = time.strftime('%Y-%m-%d %H:%M:%S',ret) print(ret1)       print(ret1)       默认本地时间戳格式化

                                                     print(time.strftime('%Y-%m-%d %H:%M:%S'))                      默认本地时间戳格式化

                                                     print(time.time)               查找当地时间戳时间                       time.sleep(2)        计时方法,括号内参数为秒

                                             (2)字符串,格式化时间      ==(strptime)==>      结构化时间      ==(mktime)==>         时间戳时间

                                                    s1 = '2018-6-19'         ret = time.strptime(s1,'%Y-%m-%d')            ret1 = time.mktime(ret)          print(ret1)       普通查找指定字符串时间戳

                                                   ret = time.strftime('%Y-%m-1')        ret1 = time.strptime(ret,'%Y-%m-%d')               print(time.mktime(ret1))       特定查找每月一号时间戳

二,import   sys 模块

        sys.path            返回模块的搜索路径                      sys.moudles        返回启动python后所有导入的模块和py文件,是个大字典,__main__显示的是当前执行文件或模块

        注意:  sys.argv      返回命令行参数的列表,第一个元素是执行文件所在的路径,在cmd界面启动时,用这个命令进行调试时,多半会用到,利用列表索引赋值

                                   如:   name = sys.argv[1]         pwd = sys.argv[2]

                                           if name == 'alex' and pwd == 'alex3714':           print('执行以下代码')

                                           else:      exit()

        sys.exit()            结束程序                                        sys.platform        返回操作系统平台名称,不怎么准              sys.version        获取Python解释程序的版本信息

        

三,import   os  模块

     重要的知识点:         os.mkdir('day1\day2')        ====>       创建路一个文件,若day1存在,则创建,不存在则不创建

                                    os.makedirs('day1\day2')     ====>     创建多层递归目录   若文件夹存在没有文件则覆盖,     若文件夹存在且有文件,就停止    若果文件夹不存在则创建 

                                     os.rmdir('day1')             ===>    删除单级空目录,若目录不为空则无法删除

                                    os.removedirs('day1\day2')     ===>  若目录为空,则删除,并递归到上一层目录,若空,则删除.若有文件则停止

                                     os.listdir('day1')                   ===>  列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印

                                     os.remove(要删除的文件)        ====>  删除一个文件

                                     os.rename('老名','新名')         ====>   重命名文件\目录

 使用python和操作系统命令交互:

                                      os.system ('bash  command')       ===>    运行shell 命令,直接显示

                                      os.popen ('bash  command').read()      ===>   运行shell命令,获取执行结果,可以读取

                                      os.environ                                ===>    获取系统环境变量

win与linux(mac)的差异命令  :           这些差异的路径,和符号,可以运用到程序中,让整个程序可以有更好的适用性

                                    os.stat()           ===>   获取文件\目录信息

                                     os.sep            ===>  输出操作系统特定的路径分隔符            win下为'\\',   linux 下为'/'

                                    os.linesep       ===>  输出当前操作系统特定的路径分隔符      win下为'\r\n'     linux下为'\n'

                                    os.pathsep      ===>输出用于分割文件路径的字符串               win下为;        linux下为:

                                     os.name         ====>输出当前使用的平台                               win下为'nt'      linux下为'posix'

os.path  系列命令:      os.path.abspath(路径)        将路径的符号规范化绝对路径 ,括号内放的是要整理的路径,相队路径会返回双路径

                                                os.path.dirname(路径)        返回路径最后文件的上层目录,  ,多次使用,就多次返回,知道取到根目录停止

                                                os.path.basename(路径)    返回路径最后文件     能查询,不能做修改     

                                                os.path.split(路径)             默认将路径的最后一个文件与前面的路径分开,并放在元组中

                                  os.path.isfile(路径)               若路径是个存在的文件,返回True, 若不是则返回False

                                  os,path,isdir(路径)               若路径是个存在的目录, 返回True, 若不是则返回False

                                  os.path.join(路径,目录,文件,文件)     这里有坑,注意如果括号内有绝对路径,那么绝对路径之前的目录或者文件将被忽略.只能有一个绝对路径

                                                                                            如果有多个,则取最后一个绝对路径和绝对路径后面的参数组合

                                     os.path.getatime(路径)          返回路径所指向的文件或目录的最后访问时间     注意:拿到的时间都是一个时间戳时间,需要转成字符串格式化

                                     os.path.getmtime(路径)         返回路径所指向的文件或目录的最后修改时间     注意:拿到的时间都是一个时间戳时间,需要转成字符串格式化

                                     os.path.getsize(路径)             返回路径的大小     这里要注意的是大小指的是字节,文件夹的大小固定是4096,文件的大小不固定

os.path   了解命令:  os.path.exists(路径)                 如果路径存在,返回True,若不存在,返回False

                                 os.path.isabs(路径)                  如果路径是绝对路径,返回True

四,序列化:   处理数据得到一个字符串的结果,就是序列化        ====>方法模块      json            pickle        shelve

                   应用:(1)处理文件需要序列化             (2)网络传输数据需要序列化

            json:    dumps     loads   处理数据,单独处理数据

                  如:    dic = {'k1':'v1'}               str_dic = json.dumps(dic)             print(type(str_dic),str_dic)        #将字典序列化成字符串

                           dic = {'k1':'v1'}               ret = json.loads(str_dic)                print(type(ret),ret)

                       dump         load     可以同时处理数据,处理文件

                 如:    dic = {'aaa':'bbb'}              with open('json_dump2','w') as f:           json.dump(dic,f)              #将文件序列化并写入文件

                                                                   with open('json_dump2') as f:                print(type(json.load(f)))       #将文件读出来,并反序列化                   

                         

     

                                       

                                    

                                    

                                   

                                         

                                       

                                        

    

                                    

                                   

      

                                                     

                                                    

猜你喜欢

转载自www.cnblogs.com/laogao123/p/9445669.html