美文网首页
模块的使用1

模块的使用1

作者: 功夫杨 | 来源:发表于2020-03-30 18:12 被阅读0次

    import time
    print(time.time()) # 时间戳:1487130156.419527
    print(time.strftime("%Y-%m-%d %X")) #格式化的时间字符串:'2017-02-15 11:40:53'
    print(time.localtime()) #本地时区的struct_time
    print(time.gmtime()) #UTC时区的struct_time

    %a Locale’s abbreviated weekday name.
    %A Locale’s full weekday name.
    %b Locale’s abbreviated month name.
    %B Locale’s full month name.
    %c Locale’s appropriate date and time representation.
    %d Day of the month as a decimal number [01,31].
    %H Hour (24-hour clock) as a decimal number [00,23].
    %I Hour (12-hour clock) as a decimal number [01,12].
    %j Day of the year as a decimal number [001,366].
    %m Month as a decimal number [01,12].
    %M Minute as a decimal number [00,59].
    %p Locale’s equivalent of either AM or PM. (1)
    %S Second as a decimal number [00,61]. (2)
    %U Week number of the year (Sunday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Sunday are considered to be in week 0. (3)
    %w Weekday as a decimal number [0(Sunday),6].
    %W Week number of the year (Monday as the first day of the week) as a decimal number [00,53]. All days in a new year preceding the first Monday are considered to be in week 0. (3)
    %x Locale’s appropriate date representation.
    %X Locale’s appropriate time representation.
    %y Year without century as a decimal number [00,99].
    %Y Year with century as a decimal number.
    %z Time zone offset indicating a positive or negative time difference from UTC/GMT of the form +HHMM or -HHMM, where H represents decimal hour digits and M represents decimal minute digits [-23:59, +23:59].
    %Z Time zone name (no characters if no time zone exists).
    %% A literal '%' character.

    计算机只能识别时间戳的格式


    image.png

    localtime([secs])
    将一个时间戳转换为当前时区的struct_time。secs参数未提供,则以当前时间为准。
    time.localtime()
    time.localtime(1473525444.037215)
    gmtime([secs]) 和localtime()方法类似,gmtime()方法是将一个时间戳转换为UTC时区(0时区)的struct_time。
    mktime(t) : 将一个struct_time转化为时间戳。
    print(time.mktime(time.localtime()))#1473525749.0
    strftime(format[, t]) : 把一个代表时间的元组或者struct_time(如由time.localtime()和
    time.gmtime()返回)转化为格式化的时间字符串。如果t未指定,将传入time.localtime()。如果元组中任何一个元素越界,ValueError的错误将会被抛出。
    print(time.strftime("%Y-%m-%d %X", time.localtime()))#2016-09-11 00:49:56
    time.strptime(string[, format])
    把一个格式化时间字符串转化为struct_time。实际上它和strftime()是逆操作。
    print(time.strptime('2011-05-05 16:37:06', '%Y-%m-%d %X'))
    time.struct_time(tm_year=2011, tm_mon=5, tm_mday=5, tm_hour=16, tm_min=37, tm_sec=6,tm_wday=3, tm_yday=125, tm_isdst=-1)
    在这个函数中,format默认为:"%a %b %d %H:%M:%S %Y"。


    image.png

    时间加减

    import datetime
    print(datetime.datetime.now()) #返回 2016-08-19 12:47:03.941925
    print(datetime.date.fromtimestamp(time.time()) ) # 时间戳直接转成日期格式 2016-08-19
    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分
    c_time = datetime.datetime.now()
    print(c_time.replace(minute=3,hour=2)) #时间替换

    import random
    print(random.random())#(0,1)----float 大于0且小于1之间的小数
    print(random.randint(1,3)) #[1,3] 大于等于1且小于等于3之间的整数
    print(random.randrange(1,3)) #[1,3) 大于等于1且小于3之间的整数
    print(random.choice([1,'23',[4,5]]))#1或者23或者[4,5]
    print(random.sample([1,'23',[4,5]],2))#列表元素任意2个组合
    print(random.uniform(1,3))#大于1小于3的小数,如1.927109612082716
    item=[1,3,5,7,9]
    random.shuffle(item) #打乱item的顺序,相当于"洗牌"
    print(item)

    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下为"\t\n",Linux下为"\n"
    os.pathsep 输出用于分割文件路径的字符串 win下为;,Linux下为:
    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所指向的文件或者目录的最后修改时间
    os.path.getsize(path) 返回path的大小

    sys.argv 命令行参数List,第一个元素是程序本身路径

    shutil :高级的 文件、文件夹、压缩包 处理模块
    shutil.copyfileobj(fsrc, fdst[, length]):将文件内容拷贝到另一个文件中
    shutil.copyfile(src, dst):拷贝文件
    shutil.copy(src, dst)拷贝文件和权限
    shutil.copy2(src, dst)拷贝文件和状态信息
    shutil.copytree(src, dst, symlinks=False, ignore=None)递归的去拷贝文件夹
    shutil.rmtree(path[, ignore_errors[, onerror]])递归的去删除文件
    shutil.move(src, dst)递归的去移动文件,它类似mv命令,其实就是重命名。
    shutil.make_archive(base_name, format,...):创建压缩包并返回文件路径

    相关文章

      网友评论

          本文标题:模块的使用1

          本文链接:https://www.haomeiwen.com/subject/bszvuhtx.html