python处理数据方法(三)

这里主要针对的就是格式和编码问题:

首先是代码:

import os

# 转换文件格式和编码方式
def to_lf(path, isLF, encoding = 'utf-8'):#这里打开的编码方式是utf-8
    """
    :param path: 文件路径
    :param isLF: True 转为Unix(LF)  False 转为Windows(CRLF)
    :param encoding: 编码方式,默认utf-8
    :return:
    """
    newline = '\n' if isLF else '\r\n' #Unix格式下 新一行就是\n,windows格式下,新一行就是\r\n
    tp = 'Unix(LF)' if isLF else 'Windows(CRLF)'
    with open(path, newline=None, encoding=encoding) as infile: 
        str = infile.readlines() #逐行读取文件
        with open(path, 'w', newline=newline, encoding=encoding) as outfile: #文件写入,新一行用前面定义的newline
            outfile.writelines(str) #逐行写入
            print("文件转换成功,格式:{0} ;编码:{1} ;路径:{2}".format(tp, encoding, path)) #输出时参数化输出

if __name__ == "__main__":
    rootdir = r'C:\Users\Administrator\Desktop\testl' #要转换编码的文件
    isLF = False  # True 转为Unix(LF)  False 转为Windows(CRLF) 
    path_list = os.listdir(rootdir) #遍历出文件来
    #path_list.sort(key=lambda x:int(x[:-4])) #对读取的路径进行排序
    for filename in path_list: 
        path = os.path.join(rootdir,filename)
        to_lf(path, isLF) #对文件进行转换的函数

注释里写的很清楚了,不过用notepad++转换更方便,点一下就可以了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值