zoukankan      html  css  js  c++  java
  • Python遍历文件夹和读写文件的方法

      需 求 分 析 

    1、读取指定目录下的所有文件
    2、读取指定文件,输出文件内容
    3、创建一个文件并保存到指定目录

      实 现 过 程

      Python写代码简洁高效,实现以上功能仅用了40行左右的代码~ 昨天用Java写了一个写入、创建、复制、重命名文件要将近60行代码;

      不过简洁的代价是牺牲了一点点运行速度,但随着硬件性能的提升,运行速度的差异会越来越小,直到人类无法察觉~

    #-*- coding: UTF-8 -*- 
    
    '''
    1、读取指定目录下的所有文件
    2、读取指定文件,输出文件内容
    3、创建一个文件并保存到指定目录
    '''
    import os
    
    # 遍历指定目录,显示目录下的所有文件名
    def eachFile(filepath):
        pathDir =  os.listdir(filepath)
        for allDir in pathDir:
            child = os.path.join('%s%s' % (filepath, allDir))
            print child.decode('gbk') # .decode('gbk')是解决中文显示乱码问题
    
    # 读取文件内容并打印
    def readFile(filename):
        fopen = open(filename, 'r') # r 代表read
        for eachLine in fopen:
            print "读取到得内容如下:",eachLine
        fopen.close()
        
    # 输入多行文字,写入指定文件并保存到指定文件夹
    def writeFile(filename):
        fopen = open(filename, 'w')
        print "
    请任意输入多行文字"," ( 输入 .号回车保存)"
        while True:
            aLine = raw_input()
            if aLine != ".":
                fopen.write('%s%s' % (aLine, os.linesep))
            else:
                print "文件已保存!"
                break
        fopen.close()
    
    if __name__ == '__main__':
        filePath = "D:\FileDemo\Java\myJava.txt"
        filePathI = "D:\FileDemo\Python\pt.py"
        filePathC = "C:\"
        eachFile(filePathC)
        readFile(filePath)
        writeFile(filePathI)
        

      工欲善其事

      最近尝试了几个常见的Python IDE,发现Subline tx2对中文的支持不好, NotePad++ 代码自定义颜色不方便。

      用来用去还是Eclipse最顺手,装上PyDev插件之后,编写Python代码很方便;

      

     

  • 相关阅读:
    (转载) 随机数原理
    ZOJ 2588 Burning Bridges(求桥的数量,邻接表)
    生成不重复的随机数对(C/C++)
    比较两个文件是否相同(C/C++语言)
    计算文件大小(C/C++语言)
    (转载)Nim游戏博弈(收集完全版)
    将一串字符串全排列输出(回溯法)
    Linux中使用Crontab定时监测维护Tomcat应用程序的方法
    Nginx单向认证的安装配置
    非关系型数据库 2017-02-12 22:27 189人阅读 评论(2) 收藏
  • 原文地址:https://www.cnblogs.com/jackchiang/p/4605327.html
Copyright © 2011-2022 走看看