zoukankan      html  css  js  c++  java
  • 【Python脚本】Python创建删除文件-----------我的第一个Python脚本

    Python相对C++和Java来说,是解释性语言,非常适合来编写脚本。

    很久之前就开始学习Python的语法了,今天写了第一个Python的脚本,来简化我的一些日常工作。

    我平时学习的时候喜欢新建一个word文档来记笔记,并以当天的日期来命名。就像是酱紫:

    于是我每天都得苦逼的先看看今天是几月几号,然后新建一个word文档,然后小心翼翼的打上2014-04-15之类的名字。虽然也并不多麻烦,但是还得经过脑子来想一想。

    然后我写了一个自动根据当天的时间来创建对应命名的word文档的函数。

    并且有时候新建了一个文档,到了一天结束的时候发现也没写任何东西,于是一个空文档就放在那了,等空文档积累多了,一个一个删除也稍显麻烦,所以我又写了个自动删除目录下的空文档的函数。

    差不多这样子,我还加了个根据指定最小文件大小删除文件的方法。

    Python代码如下:

    import os
    directory = "E:\学习日志\"
    os.chdir(directory) # 改变当前工作目录
    cwd = os.getcwd() # 查看当前工作目录
    print("--------------current working directory : " + cwd + "----------")
    
    def deleteBySize(minSize):
        """删除小于minSize的文件(单位:K)"""
        files = os.listdir(os.getcwd()) # 列出目录中文件
        for file in files:
        ##    print file + " : " + str(os.path.getsize(file))
            if os.path.getsize(file) < minSize * 1000:
                os.remove(file)
                print(file + " deleted.")
        return
    
    def deleteNullFile():
        '''删除所有大小为0的文件'''
        files = os.listdir(os.getcwd()) # 列出目录中文件
        for file in files:
            if os.path.getsize(file) == 0: #得到文件大小,如果是目录返回0
                os.remove(file)
                print(file + " deleted")
        return
    
    def create():
        '''根据本地时间创建新文件,如果已存在则不创建'''
        import time
        #将指定的struct_time(默认为当前时间),根据指定的格式化字符串输出
        t = time.strftime('%Y-%m-%d',time.localtime()) 
        suffix = ".docx"
        newFile =os.getcwd() + "\" + t + suffix 
        if not os.path.exists(newFile):
            f = open(newFile,'w')
            f.close()
            print newFile + " created."
        else:
            print newFile + " already exist."
        return
    
    hint = '''funtion : 
            1    create new file
            2    delete null file
            3    delete by size
            q    quit
    
    please input number: '''
    while True:
        option = raw_input(hint)
        if cmp(option,"1") == 0:
            create()
        elif cmp(option,"2") == 0:
            deleteNullFile()
        elif cmp(option,"3") == 0:
            minSize = raw_input("minSize(K) : ")
            deleteBySize(minSize)
        elif cmp(option,"q") == 0:
            print "quit !"
            break
        else:
            print ("disabled input. please try again...")

    主要涉及到的就是一些文件操作函数和时间函数。

    这是我第一个正式的Python脚本,我发现解决问题的动力才是第一生产力!Python是一门脚本语言,应用性十分的强大,可以用来解决很多实际问题,也只有当你遇见了可以用Python来解决的问题的时候,你才能真正的提高自己的能力不是吗?

    所以,今后更要多发现问题,然后解决才是。

  • 相关阅读:
    mysql的IFNULL()函数FLOOR(),ROUND()函数
    何时有个内连接何时用外连接
    Mybatis中什么时候应该声明jdbcType
    FFPEG 转码记录------解决了有流,但是没有码率和FPS?
    HLS播放权限测试记录
    Redis-benchmark测试Redis性能
    JavaScript基础知识之——Location 对象详解
    Redis基础知识之—— 缓存应用场景
    Redis基础知识之—— hset 和hsetnx 的区别
    SAGE入门:开源数学系统之集大成者
  • 原文地址:https://www.cnblogs.com/4everlove/p/3666835.html
Copyright © 2011-2022 走看看