zoukankan      html  css  js  c++  java
  • 常用模块与项目目录规范

    常用模块(一)

    time模块  #用之前先导入import time

    1、time.time()  #时间戳

      --print(time.time())    #1557226631.794335(现在到1970年的秒数)

    2、time.sleep()  #延迟线程

      --print(time.sleep(3))  #延迟3秒的线程

    3、time.localtime()  # 当地时区的时间

      --print(time.localtime())  (tm_year=2019.......)

      --print(time.localtime().tm_wday)  #可以单独把星期拿出来查看

    4、time.gmtime()    #格林威治时间

      --print(time.gmtime())  

    5、time.stftime('%Y-%m-%d %H:%M%S',(上面获取的时间,里面有九个参数))  #格式化时间

      --print(time.stftime('%Y-%m-%d %H:%M%S',(2019.......)))  # 2019-05-07 05:15:54

      --格式化里面的%什么代表什么都是规定好的,详细在下面

    '''
    %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 当前时区的名称
    %% %号本身
    '''
    View Code

    calendar模块

    1、calender.isleap(year)  #判断是否是闰年

    2、calender.month(year,mouth)  #查看某年某月的日历

    3、calender.monthrange(year,mouth)  #查看某年某月的起始星期与当月天数

    4、calender.weekday(year,month,day)  #查看某年某月某日是星期几

    datetime模块

    1、datetime.datetime.now()  #当前的时间  返回的是 2019-05-08 13:11:11.842866 

    2、datetime.datetime.now() + datetime.timedelta(day = -1)  

        --#昨天的时间,datetime模块可以进行时间运算,括号里-1就减一天

    3、datetime_obj.replace()  #更改时间,你可以在括号里更改相对应的时间(前面是一个时间对象)

    4、datetime.date.fromtimestamp(timestamp)

        --#括号里面是时间戳,可以把时间戳固定成为年月日的格式  2019-05-08

        --#所以改时间戳比较靠后的值对格式化出来的时间没有影响

    sys模块(系统)

    1、sys.argv  #当py文件作为脚本文件执行时,在外界传入参数可以被sys.argv接收

        --sys.argv本质是一个列表,如果不传参,里面只有执行文件的绝对路径,传参都会按顺序append进去

    2、sys.path  #环境变量,一般在导入模块或者包的时候才关心

        --在执行文件中导入模块或者包,都会在sys.path列表中路径下按顺序去查找有没有对应名字的模块或者包

    ***************************************************************************************************

    3、sys.exit()  #退出系统,括号里是0表示正常退出,其他都代表某一种异常退出

    4、sys.version  #获取python解释器的版本信息

    5、sys.maxsize I sys.maxint  #获取最大int值,py3里不支持后者

    6、sys.platform  #操作系统平台名称,windows都是win32

    os模块(操作系统)

    1、os.mkdir('dirname')  #生成单级目录,即使是绝对路径,也只是创建最后一个目录,如果输入的路径找不到就会报错

    2、os.makedirs('dirname1dirname2.....dirnamen')  #生成多级目录,遇到不存在的就会创建一个文件夹

    3、os.remove()    # 删除文件 

    4、os.rmdir()       #删除单级空目录

    5、os.removedirs()  #删除多级空目录,本质是迭代删除,删完一个空目录返回上一个目录,如果是空接着删接着返,

               #不是空就删不掉

    6、os.listdir('dirname')  # 列举当前目录下的所有资源

      ---注:以上方法括号里都写绝对路径(防止作为py文件不在pycharm里运行)

     ***************************************************************************************************

    7、os.rename('oldname','newname')  #文件的重命名

    8、os.getcwd()  #获得当前的工作目录    不常用   --通常用下面操作路径的方法

    9、os.sep    #路径分隔符

    10、os.linesep  #行终止分隔符

    11、os.pathsep  #文件分隔符

    12、os.environ  #操作系统的环境变量  --一个大的字典

    13、os.system()  #执行shell脚本  --模拟在cmd命令窗口执行命令

    os.path模块(系统路径操作)

    1、__file__  #执行文件的当前路径

      --print(__file__)    #返回  F:/pyprogram/day19/part3/pickle模块.py

    2、os.path.split(path)  #将path最后一级名称与之前名称切分开来,形成一个元组,可以索引取值

    3、os.path.dirname(path)  #返回上一级目录,经常和__file__连用找出根目录,而不是直接把根目录写死

    4、os.path.exists(path)  #判断括号里的绝对路径是否存在,存在返回True

    5、os.path.isfile(path)   #判断括号里的绝对路径是不是文件,是文件返回True

    6、os.path.isdir(path)    #判断括号里的绝对路径是不是文件夹,是文件夹就返回True

    7、os.path.join(path1,path2...)  #可以把括号里的路径全部拼接起来,形成一个新的绝对路径

     ***************************************************************************************************

    8、os.path.abspath(path)  #返回规范化的绝对路径

    9、os.path.basename(path)  #返回最后一级名称

    10、os.path.isabs(path)  #判断是否是绝对路径

    11、os.path.getatime(path)  #最后存取的时间

    12、os.path.getmtime(path)  #最后修改的时间

    13、os.path.getsize(path)  #获取目标大小

    14、normcase函数  os.path.normcase(path)  #windows上大写换成小写,斜杆换成反斜杠

    15、normpath函数   os.path.normpath(path)  #规范化路径   F:pyprogramday19part3a

    跨文件夹移动文件

      --主体思想就是先在想要移动的位置创建一个与原文件同名的文件,然后复制原文件到新文件,最后删除原文件

    # 案例
    import os
    import sys
    BASE_DIR = os.path.dirname(__file__)
    sys.path.append(BASE_DIR)               # 获得根目录并把它添加到环境变量里
    
    def move_file(file,folder):
        if not os.path.exists(file):    # 判断如果原文件不存在直接退出
            return
        if not os.path.isfile(file):    # 判断不是文件就退出
            return
        with open(file,'rb') as rf,open(folder,'wb') as wf:     # 复制
            for line in rf:
                wf.write(line)
        os.remove(file)                 # 文件复制完,删除原文件
    
    file = os.path.join(BASE_DIR,'1.txt')   # 获得想要移动的文件的绝对路径
    base_file = os.path.split(file)[1]      # 获得文件的名字
    folder = os.path.join(BASE_DIR,'part1',base_file)    # 拼凑出想要移动后位置的绝对路径
    move_file(file,folder)

    递归删除的思路

    def delete_dir(folder):

      for path in os.listdir(folder):

        #如果path是文件夹  delete_dir(path)  接着调用函数

        #如果是path是文件 os.remove(path)  删除文件

      rmdir(folder)  #如果for循环走完了,就代表folder内部被删空了,就可以删除folder了

    项目开发规范

      --一般项目都有如下的文件夹

    ATM

      --bin:可执行文件

      --core:核心代码

      --db:数据库

      --setting:配置

      --lib:公用模块

      --log:日志

      --static:静态资源

      --interface:接口

  • 相关阅读:
    电子书下载:Microsoft Silverlight 4 and SharePoint 2010 Integration
    电子书下载:Silverlight 4: Problem – Design – Solution
    电子书下载:Canvas Pocket Reference: Scripted Graphics for HTML5
    Delphi 控件 DevExpress VCL 5.3
    电子书下载:XNA 3D Primer
    电子书下载:Microsoft Silverlight 4 Data and Services Cookbook
    [掌心网]苹果iPhone开发者的Windows Phone 7使用报告
    Microsoft Windows Phone 7 Toolkit Silverlight SDK XNA Game Studio 4.0 开发工具套件正式版下载
    电子书下载:Agile in a Flash: SpeedLearning Agile Software Development
    How to fix compatibility mode error that can appear when installing Windows Phone Developer Tools or Visual Studio 2010
  • 原文地址:https://www.cnblogs.com/hesujian/p/10827427.html
Copyright © 2011-2022 走看看