You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何解决Python中的文件名元音重音显示异常问题

解决Python打印带重音文件名显示错误的问题

问题原因

这是因为输出终端编码不匹配,加上手动拼接路径引发的编码隐性冲突,导致带重音的Unicode字符(如ó、í)无法正确解析显示。

修复后的代码

import pikepdf
import os
import sys

# 强制标准输出使用UTF-8编码,确保重音字符正确显示
sys.stdout.reconfigure(encoding='utf-8')

# 替换内置函数名dir为dir_path,避免命名冲突
dir_path = '/content/Documentos/'
for nombre_directorio, dirs, ficheros in os.walk(dir_path):
    for nombre_fichero in ficheros:
        # 使用os.path.join构建路径,自动处理编码和路径分隔符问题
        input_pdf_path = os.path.join(nombre_directorio, nombre_fichero)
        output_pdf_path = os.path.join('/content/output/', nombre_fichero)
        
        pdf = pikepdf.open(input_pdf_path)
        pdf.save(output_pdf_path)
        print(output_pdf_path)

关键修复点

  • 路径拼接优化:用os.path.join替代手动字符串拼接,它会自动适配系统路径规则并处理编码相关隐性问题,避免文件名编码被破坏。
  • 输出编码强制设置:通过sys.stdout.reconfigure(encoding='utf-8')指定输出编码为UTF-8,确保终端能正确解析带重音的Unicode字符。
  • 变量名规范:将dir改为dir_path,避免与Python内置函数dir()冲突,减少潜在bug。

内容的提问来源于stack exchange,提问作者Carlos Berrocal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 20:55:10