zoukankan      html  css  js  c++  java
  • python 替换字符,替换字符串方法,将文件名中的中文字符替换为英文

    replace方法

    将指定子串都替换为另一个字符串,并返回替换后的结果。

     translate方法

    方法translate与replace一样替换字符串的特定部分,但不同的是它只能进行单字符替换。这个方法的优势在于能够同时替换多个字符,因此效率比replace高。这个方法的用途很多(如替换换行符或其他随平台而异的特殊字符),但这里只介绍一个比较简单(也有点傻)的示例。假设你要将一段英语文本转换为带有德国口音的版本,为此必须将字符c和s分别替换为k和z。然而,使用translate前必须创建一个转换表。这个转换表指出了不同Unicode码点之间的转换关系。要创建转换表,可对字符串类型str调用方法maketrans,这个方法接受两个参数:两个长度相同的字符串,它们指定要将第一个字符串中的每个字符都替换为第二个字符串中的相应字符。就这个简单的示例而言,代码类似于下面这样:

     

    使用translate方法,对文件名中的中文字符替换成自定义的字符,将甲-->a,乙-->b,丙-->c,丁-->d,正-->a

     1 def replace_filename(dir_path):
     2     """
     3     将文件夹下,文件中文名字替换为英文,甲乙丙丁正->abcda
     4     :param dir_path:
     5     :return:
     6     """
     7     files = os.listdir(dir_path)
     8     table = str.maketrans('甲乙丙丁正','abcda') # 转换表,单个字符的替换
     9 
    10     # print(files) files包含文件,文件夹
    11     for file in files:
    12         if os.path.isdir(file):
    13             continue
    14         oldname =os.path.join(dir_path,file)
    15         new_file = file.translate(table)
    16         newname = os.path.join(dir_path,new_file)
    17         os.rename(oldname,newname) # 有移动重命名功能

     参考书籍:

    python 基础教程

  • 相关阅读:
    cpp 二进制文件读写
    中文词频统计
    文件方式实现完整的英文词频统计实例
    组合数据类型练习,英文词频统计实例上
    英文词频统计预备,组合数据类型练习
    凯撒密码、GDP格式化输出、99乘法表
    字符串基本操作
    条件、循环、函数定义 练习
    turtle库基础练习
    Python基础练习
  • 原文地址:https://www.cnblogs.com/shuangcao/p/13780825.html
Copyright © 2011-2022 走看看