zoukankan      html  css  js  c++  java
  • python's twenty-seventh day for me 模

    time模块:

      1,计算执行代码的时间  time.time()

      2,让程序停这里一段时间  time.sleep(时间(s))

      时间戳时间:

    import time
    print(time.time())  # 1524553970.65817

      格式化时间:

        1,字符串格式化时间:

    import time
    # 字符串格式化时间,给人看的。
    print(time.strftime('%Y-%m-%d %H:%M:%S'))   # 2018-04-24 15:15:25
    print(time.strftime('%y-%m-%d'))    # 18-04-24   年份只剩两位数
    print(time.strftime('%x %X'))   # 04/24/18 15:17:26
    print(time.strftime('%c'))  # Tue Apr 24 15:18:17 2018

        2,结构化时间:时间戳时间 转 格式化时间的 中间件

    import time
    # 本地结构化时间
    print(time.localtime())
    # time.struct_time(tm_year=2018, tm_mon=4, tm_mday=24, tm_hour=15, tm_min=20, tm_sec=8, tm_wday=1, tm_yday=114, tm_isdst=0)
    # 英国的结构化时间
    print(time.gmtime())
    # time.struct_time(tm_year=2018, tm_mon=4, tm_mday=24, tm_hour=7, tm_min=21, tm_sec=1, tm_wday=1, tm_yday=114, tm_isdst=0)

      格式化时间与时间戳格式时间的转换:

    import time
    p = time.strptime('1999-12-1','%Y-%m-%d') # 将格式化的时间转为结构化时间。
    print(p)    # time.struct_time(tm_year=1999, tm_mon=12, tm_mday=1, tm_hour=0, tm_min=0, tm_sec=0, tm_wday=2, tm_yday=335, tm_isdst=-1)
    print(time.mktime(p))   # 943977600.0   # 转为时间戳格式。
    import time
    ret = time.localtime(1500000000)    # 将时间戳格式转为结构化时间。
    res = time.strftime('%Y-%m-%d %H:%M:%S',ret)  # 将结构化时间转为格式化时间
    print(res)  # 2017-07-14 10:40:00
    %y 两位数的年份表示(00-99%Y 四位数的年份表示(000-9999%m 月份(01-12%d 月内中的一天(0-31%H 24小时制小时数(0-23%I 12小时制小时数(01-12%M 分钟数(00=59%S 秒(00-59%a 本地简化星期名称
    %A 本地完整星期名称
    %b 本地简化的月份名称
    %B 本地完整的月份名称
    %c 本地相应的日期表示和时间表示
    %j 年内的一天(001-366%p 本地A.M.或P.M.的等价符
    %U 一年中的星期数(00-53)星期天为星期的开始
    %w 星期(0-6),星期天为星期的开始
    %W 一年中的星期数(00-53)星期一为星期的开始
    %x 本地相应的日期表示
    %X 本地相应的时间表示
    %Z 当前时区的名称
    %% %号本身
    python中时间日期格式化符号:

    random模块: 

        1,随机  打乱顺序有关的

      1,random():打印 0-1 之间的随机小数

    import random
    print(random.random())  # 打印 0-1 之间的随机小数

      2,uniform(start,end):打印从start到end 之间的随机小数

    import random
    print(random.uniform(1,4))

      3,randint(start,end):打印从start到end 之间的所有整数(包含start和end)

    import random
    print(random.randint(1,4))

      4,randrange(start,end,步长) :不包含 end

    import random
    print(random.randrange(1,10,2))

      5,choice(): 可从中随机选取一个元素。

    import random
    print(random.choice([1,'2',3,4,[5,6],7]))

      6,sample():可以设置选取几个元素

    import random
    print(random.sample([1,'2',3,4,[5,6],7],3))

      7,shuffle():可打乱顺序有关的数据类型,

    item = [1,3,5,7,9]
    import random
    random.shuffle(item)
    print(item) # [3, 9, 5, 7, 1]

    sys模块:和python解释器交互的。

      1,sys.exit(n):退出程序,正常退出时 syy.exit(0),错误退出时sys.exit(1)。

    import sys
    print('*'* 6)
    sys.exit()  # 直接终止程序。
    print(111)

      2,sys.version 获取python解释程序的版本信息。

    import sys
    print(sys.version)  # 3.5.4 (v3.5.4:3f56838, Aug  8 2017, 02:17:05) [MSC v.1900 64 bit (AMD64)]

      3,sys.platform 返回操作系统平台名称(不准)

    import sys
    print(sys.platform) # win32

      4,sys.path 返回模块的搜索路径,初始化时使用pythonpath环境变量的值

    import sys
    print(sys.path)

      5,sys.argv 命令行参数list,第一个元素是程序本身路径(以脚本的形式执行一个文件的时候,可以加一些参数)

    import sys
    print(sys.argv) # ['F:/untitled/day27/day27process.py']

      需要在cmd中运行:

    import sys
    import logging
    print(sys.argv)
    inp = sys.argv[1] if len(sys.argv)>1 else 'WARNING'
    logging.basicConfig(level = getattr(logging,inp))  # DEBUG
    num = int(input('>>>'))
    logging.debug(num)
    a = num * 100
    logging.debug(a)
    b = a - 10
    logging.debug(b)
    c = b + 5
    print(c)
    # C:UsersThink>python F:/untitled/day27/day27process.py DEBUG
    # ['F:/untitled/day27/day27process.py', 'DEBUG']
    # >>>5
    # DEBUG:root:5
    # DEBUG:root:500
    # DEBUG:root:490
    # 495

     os 模块:

      当前执行这个python文件的工作目录相关的工作路径:

    import os
    print(os.getcwd())  # 获取当前工作目录,即当前python脚本工作的目录半径。
    print(os.chdir('文件名'))  # 改变当前脚本工作目录,相当于shell下cd.
    print(os.curdir)    # 返回当前目录:('.')
    print(os.pardir)    # 获取当前目录的父目录字符串名:('..')

      和文件夹相关的:

    import os
    os.makedirs('dirname1/dirname2') # 可生成多层递归目录(一次创建多级文件夹)
    os.removedirs('dirname1/dirname2')   #若目录为空,则删除,并递归到上一目录,如果也为空则删除,依此类推。
    os.mkdir('dirname')     # 生成单级目录,相当于shell中的 mkdir dirname (一次只能创建一个文件夹)
    os.rmdir('dirname')     # 删除单级空目录,若目录下不为空,则不能删除,会报错。相当于shell中 rmdir dirname
    print(os.listdir('dirname1'))   # 列出指定目录下的所有文件和子目录,包括隐藏文件,并以列表形式打印。

      和文件相关的:

    import os
    os.remove('ret.py')     # 默认删除相对路径下的ret.py文件
    os.rename('oldname','newname')  # 重命名文件/目录
    os.stat('path/filename')    # 获取文件/目录信息

      和操作系统差异相关的:

    import os
    print(os.sep)   #    输出操作系统特定的路径分隔符,win: \  linux: /
    print(os.linesep)   # 输出当前平台使用的行(hang)终止符,win: '	 
    ', linux: '
    '
    print(os.path.sep)  # 输出用于分割路径的字符串  win: ;(分号)  linux: :(冒号)
    print(os.name)  # 输出字符串指示当前使用的平台。 win: 'nt'   linux: 'posix'

      和执行系统命令相关的:

    import os
    os.system('bash command')   # 运行shell命令,直接显示。
    os.popen('bash command').read() # 运行shell命令,获取执行结果。

      和环境变量相关的:

    import os
    print(os.environ)   # 获取系统环境变量

      os.path

    import os
    print(os.path)  # <module 'ntpath' from 'C:\Python35\lib\ntpath.py'>
    # 返回‘new_name.py’规范化的绝对路径。
    print(os.path.abspath('new_name.py'))   # F:untitledday28
    ew_name.py
    # 将'F:untitledday28
    ew_name.py'分割成目录和文件名再以元祖形式返回。
    print(os.path.split(r'F:untitledday28
    ew_name.py'))  # ('F:\untitled\day28', 'new_name.py')
    # 返回'F:untitledday28
    ew_name.py'的目录,其实就是os.path.split('路径')的第一个元素,
    # os.path.basename('路径') 就是返回path 最后的文件名,如果path以/或结尾,那么就会返回空值。
    print(os.path.dirname(r'F:untitledday28
    ew_name.py'))    # F:untitledday28
    print(os.path.basename(r'F:untitledday28\'))   # 这样返回的就是空值。
    print(os.path.exists('new_name.py'))    # True    # 如果path存在返回True,否则返回False.
    print(os.path.isabs('new_name.py'))     # False   如果path是绝对路径,返回True,否则返回False
    print(os.path.isabs(r'F:untitledday28
    ew_name.py'))  # True
    print(os.path.isfile('new_name.py'))    # True  如果path是一个存在的文件,返回True,否则返回False
    print(os.path.isdir(r'F:untitledday28\'))    # True 如果path是一个存在的目录,返回True,否则返回False
    print(os.path.join(r'F:untitledday28\','new_name.py'))   # F:untitledday28\new_name.py   # 将多个路劲组合后返回,第一个绝对路径之前的参数将被忽略。
    print(os.path.getatime('new_name.py'))  # 1524641734.8249621   返回path所指向的文件或目录最后的访问时间。
    print(os.path.getmtime('new_name.py'))  # 1524641734.8249621    返回path所指向的文件或目录最后的修改时间。
    print(os.path.getsize('new_name.py'))   # 33    返回path指向的文件或目录的大小。
  • 相关阅读:
    -for循环案例(下)
    for循环案例(上)
    for循环
    判断语句案例
    判断语句
    操作符优先级
    windows 下安装图片标注软件 labelling和出错解决
    tf-faster rcnn
    目标检测——Faster R-CNN 详解、Pytorch搭建、训练自己的数据集
    java idea 配置安装
  • 原文地址:https://www.cnblogs.com/stfei/p/8931565.html
Copyright © 2011-2022 走看看