Python怎么把/r/n替换成/n?

2025-12-02 0 91,494

在文本编辑器中会自动将rn截断成n,(在unix上换行使用n,windows上,换行使用的是rn)于是,写了这个脚本,不用一行一行去改。来具体看下如何实现的:

import os
 
def replace(filePath, w2u):
  try:
    oldfile = open(filePath, "rb+")     #这里必须用b打开
    path, name = os.path.split(filePath)
    newfile = open(path + '$' + name, "ba+")
     
    old = b''
    new = b''
    if w2u == True:
      old = b'r'
      new = b''
    else:
      old = b'n'
      new = b'rn'
 
    data = b''
    while (True):
      data = oldfile.read(200)
      newData = data.replace(old, new)
      newfile.write(newData)
      if len(data) < 200:
        break
    newfile.close()
    oldfile.close()
     
    os.remove(filePath)
    os.rename(path + '$' + name, filePath)
  except IOError as e:
    print(e)
     
if __name__ == "__main__":
  print("请输入文件路径:")
  filePath = input()
  replace(filePath, False)  #这个改为True就可以实现n变成rn

要注意的是,在python里,像rn这样的符号,如果是文本打开的话,是找不到rn的,而只能找到'n',所以必须用b(二进制)模式打开。

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:以上部本文内容由互联网用户自发贡献,本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。投诉邮箱:3758217903@qq.com

ZhiUp资源网 常见问题 Python怎么把/r/n替换成/n? https://www.zhiup.top/9157.html

相关