zoukankan      html  css  js  c++  java
  • python-time模块、sys模块、os模块以及大量实例

        模块

    通俗的说模块就把一个已经写好的带有可使用的函数的文件,通过文件名进行导入,然后调用里面的函数等来完成所需功能,模块封装了你需要实现功能的代码,使用者只需调用即可,简化代码量,缩短编程时间。

         time模块

    实例

            import time
            import datatime
            print("start to sleep...") 

         ##time.sleep时间等待5秒 time.sleep(
    5) print("wake up ....")
            print(time.time())
            #时间戳 从1970年1月1号开始到现在一共过去了多少秒
    
            print(time.ctiem())
            #输出当前系统时间
    
            print(time.ctime(time.time()-86640))
            #将时间戳转为字符串格式
      print(time.gmtime(time.time()-86640))

      #输出结果time.struct_time(tm_year=2017, tm_mon=8, tm_mday=7, tm_hour=7, tm_min=32, tm_sec=49, tm_wday=0, tm_yday=219, tm_isdst=0)
                time_obj=time.gmtime(time.time()-86640)
                print(time_obj) #根据上面的输出内容进行格式化输出
                print(str(time_obj.tm_year) + "-" + str(time_obj.tm_mon) + "-" + str(time_obj.tm_mday))
                #结果  2017-8-7  #加上str是因为他们原来是整型的

    #用字符串格式化输出 print("%s-%s-%s"%(time_obj.tm_year,time_obj.tm_mon,time_obj.tm_mday) #结果为 2017-8-7 格林威治时间
            time.locatime(time.time()-86640)#本地时间(本机时间)
            
            time.strftime("%Y-%m=%d %H:%M:%S",time.localtime())
            #格式化输出时间可以将time.localtime替换为其他时间
            #strftime将给定对象转成给定格式
            
            time.strptime("2016/05/22","%Y/%m/%d") 
            #将 日期字符串 转成 struct时间对象格式
            #就是上面那个反过来
            #表明时间格式转换成struct时间格式
            
        

    timedata模块

            print(datetime.date.today())
            #输出格式2016-01-26
            
            print(datetime.date.fromtimestamp(timetime()-86400))
            #2016-01-26 将时间戳转换为日期格式
            
            current_time = datetime.datetime.now()
            print(current_time)
            #输出2017-08-08 20:33:12.870346
            print(current_time.timetuple)
            #返回struct_time格式
            print(current_time.replace())#输出现在时间
            print(current_time.replace(1996,5,20))#输出给定时间        
    print(datetime.datetime.now() )#当前时间
    print(datetime.datetime.now() + datetime.timedelta(3)) #当前时间+3天
    print(datetime.datetime.now() + datetime.timedelta(-3)) #当前时间-3天
    print(datetime.datetime.now() + datetime.timedelta(hours=3)) #当前时间+3小时
    print(datetime.datetime.now() + datetime.timedelta(minutes=30)) #当前时间+30

    sys模块

          import sys
             print(sys.argv) #在Terminal中输入python 脚本名.py 加参数
             if sys.argv[1] == "120" :#假如第一个参数为 120 就输出 gg
                 print("gg")  #否则输出....
             else :
                 print("....")
                
                
             print(sys.path)#输出模块存放目录
            sys.exit(n)
            退出程序,正常退出时exit(0)
            choice = input("quit?")
            if choice == "y" or choice == "Y":
                sys.exit("bye")
                
            sys.version        
            获取Python解释程序的版本信息
            
            sys.platform  
            返回操作系统平台名称
            
            pip.exe
            安装模块,详情190
            
            sys.stdout.write("please:")
            不换行输出
            
            abc = sys.stdin.read()
            #对输入的字符输入到abc中,可多行

    sys.stdin.red()

            >>> cmd = sys.stdin.read()
            aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
            >>> print(cmd)
            Traceback (most recent call last):
              File "<stdin>", line 1, in <module>
            KeyboardInterrupt
            >>> print(cmd)
            aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
    
            >>>
            
            abc = sys.stdin.readline()
            #只能一行
    1         sys.argv           命令行参数List,第一个元素是程序本身路径
    2         sys.exit(n)        退出程序,正常退出时exit(0)
    3         sys.version        获取Python解释程序的版本信息
    4         sys.maxint         最大的Int值
    5         sys.path           返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值
    6         sys.platform       返回操作系统平台名称
    7         sys.stdin          输入相关
    8         sys.stdout         输出相关
    9         sys.stderror       错误相关    

    OS模块

     1         os.getcwd()
     2         获取当前工作目录,即当前python脚本工作的目录路径
     3         
     4         os.chdir("dirname")  
     5         改变当前脚本工作目录;相当于shell下cd
     6         
     7         os.curdir  
     8         返回当前目录: ('.')
     9         
    10         os.pardir  
    11         获取当前目录的父目录字符串名:('..')
    12         
    13         os.makedirs('dirname1/dirname2') 
    14         可生成多层递归目录
    15         
    16         os.removedirs('dirname1')    
    17         若目录为空,则删除,并递归到上一级目录,如若也为空,则删除,依此类推
    18         
    19         os.mkdir('dirname')    
    20         生成单级目录;相当于shell中mkdir(建立一个新的子目录) dirname(目录名)
    21         
    22         os.rmdir('dirname')    
    23         删除单级空目录,若目录不为空则无法删除,报错;相当于shell中rmdir(删除目录) dirname
    24         
    25         os.listdir('dirname')    
    26         列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表方式打印
    27         
    28         os.remove()  
    29         删除一个文件
    30         
    31         os.rename("oldname","newname")  
    32         重命名文件/目录
    33         
    34         os.stat('path/filename')  
    35         获取文件/目录信息
    36         
    37         os.sep    
    38         输出操作系统特定的路径分隔符,win下为"\",Linux下为"/"
    39         
    40         os.linesep    
    41         输出当前平台使用的行终止符,win下为"	
    ",Linux下为"
    "
    42         
    43         os.pathsep    
    44         输出用于分割文件路径的字符串
    45         
    46         os.name    
    47         输出字符串指示当前使用平台。win->'nt'; Linux->'posix'
    48         
    49         os.system("bash command")  
    50         运行shell命令,直接显示
    51         
    52         os.environ  
    53         获取系统环境变量
    54         
    55         os.path.abspath(path)  
    56         返回path规范化的绝对路径
    57         
    58         os.path.split(path)  
    59         将path分割成目录和文件名二元组返回
    60         
    61         os.path.dirname(目录名)(path)  
    62         返回path的目录。其实就是os.path.split(path)的第一个元素
    63         
    64         os.path.basename(path)  
    65         返回path最后的文件名。如何path以/或结尾,那么就会返回空值。即os.path.split(path)的第二个元素
    66         
    67         os.path.exists(path)  
    68         如果path存在,返回True;如果path不存在,返回False
    69         
    70         os.path.isabs(path)  
    71         如果path是绝对路径,返回True
    72         
    73         os.path.isfile(path)  
    74         如果path是一个存在的文件,返回True。否则返回False
    75         
    76         os.path.isdir(path)  
    77         如果path是一个存在的目录,则返回True。否则返回False
    78         
    79         os.path.join(path1[, path2[, ...]])  
    80         将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
    81         
    82         os.path.getatime(path)  
    83         返回path所指向的文件或者目录的最后存取时间
    84         
    85         os.path.getmtime(path)  
    86         返回path所指向的文件或者目录的最后修改时间

    实例解析

    利用模块创建目录文件

            import os
    
            def fff(path):
                if os.path.isdir(path):
                    print("目录已经存在")
                else :
                    os.mkdir(path)
                    print("创建成功")
    
            a = input("请输入文件名,不能输入特殊字符")
            fff(a)

    进度条

    版本一

    import time
                import sys
                a=0
                while a !=100:
                    for i in range(20):
                        a += 5
                        sys.stdout.write("%d%%|"%(a))
                        for k in range(i):
                            sys.stdout.write("#")
                        sys.stdout.flush()
                        time.sleep(0.5)
                        sys.stdout.write("
    ")#清空本行字符    

    版本二

        for i in range(21):  
                sys.stdout.write("
    ")   #这里的int(i/20*100)*"*"意思是输出多少个"*"
                sys.stdout.write("%s%% |%s"%(int(i/20*100),int(i/20*100)*"*"))
                sys.stdout.flush()
                time.sleep(0.5)
  • 相关阅读:
    转载:有关推挽输出、开漏输出、复用开漏输出、复用推挽输出以及上拉输入、下拉输入、浮空输入、模拟输入区别
    生活该是什么样子
    怎么处理问题
    jquery.validate 1.7版本(remote方法)bug修复方法(一)
    jquery.ui.dialog 1.81在IE8中出现滚动条bug解决方法
    javascript 懒加载技术(lazyload)简单实现
    jquery.validate 1.7版本(remote方法)bug修复方法(二)
    发布一款JavaScript焦点图组件
    发布一款轻量级的JSON转换代码
    android_intent和intent_action大全 .
  • 原文地址:https://www.cnblogs.com/liudi2017/p/9158685.html
Copyright © 2011-2022 走看看