鱼C论坛

 找回密码
 立即注册
查看: 1767|回复: 6

关于python编码问题

[复制链接]
发表于 2023-3-28 16:21:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
想写一个批量重命名脚本

#coding: utf-8
import os, re


path = input("请输入你要修改的文件目录: ")

files = os.listdir(path)
os.chdir(path)
print(f"当前目录的所有文件:{files}")

请输入你要修改的文件目录: /home/mablish/Media/TV/大时代
当前目录的所有文件:['E05.mkv', 'E15.mkv', 'E14.mkv', 'E20.mkv', 'E06.mkv', 'E31.mkv', 'E01.mkv', 'E33.mkv', 'E23.mkv', 'E39.mkv', 'E34.mkv', 'E19.mkv', 'E10.mkv', 'E04.mkv',
'E17.mkv', 'E11.mkv', 'E36.mkv', 'E26.mkv', 'E07.mkv', 'E02.mkv', 'E21.mkv', 'E29.mkv', 'E09.mkv', 'E12.mkv', 'E22.mkv', 'E35.mkv', 'metadata', 'E13.mkv', 'E24.mkv', 'E32.mkv',
'E27.mkv', 'E25.mkv', 'E40.mkv', 'E18.mkv', 'E30.mkv', 'E03.mkv', 'E37.mkv', 'E08.mkv', 'E38.mkv', 'E16.mkv', 'E28.mkv']


请输入你要修改的文件目录: /home/mablish/Media/TV/刺客伍六七S01
Traceback (most recent call last):
  File "/home/mablish/rename.py", line 5, in <module>
    path = input("请输入你要修改的文件目录: ")
UnicodeDecodeError: 'utf-8' codec can't decode byte 0xe3 in position 0: invalid continuation byte

不明白为什么第一个可以用而第二个又不行了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2023-3-28 16:25:46 | 显示全部楼层
这个错误提示表明,你的程序在尝试以 utf-8 编码格式解码一个包含无效字符的字节序列。在大多数情况下,这个问题可以通过使用正确的编码格式解码数据来解决。

你可以尝试使用不同的编码格式进行解码。比如,如果你知道数据的编码格式是 GBK,可以尝试使用以下代码:
with open('filename', 'r', encoding='gbk') as f:
    data = f.read()

如果你不确定数据的编码格式,可以尝试使用 chardet 库来检测数据的编码格式:
import chardet

with open('filename', 'rb') as f:
    data = f.read()

encoding = chardet.detect(data)['encoding']
with open('filename', 'r', encoding=encoding) as f:
    data = f.read()

在这个例子中,chardet.detect() 函数会检测数据的编码格式,并返回一个字典,其中包含编码格式的信息。然后,使用检测到的编码格式来打开文件并解码数据。

希望这些方法可以帮助你解决这个错误!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-3-28 16:32:54 | 显示全部楼层
isdkz 发表于 2023-3-28 16:25
这个错误提示表明,你的程序在尝试以 utf-8 编码格式解码一个包含无效字符的字节序列。在大多数情况下,这 ...

刚刚我是ssh远程操作的,现在我在本机上操作又不存在这个问题了,怎么回事
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-28 16:37:22 | 显示全部楼层
zhoujie13 发表于 2023-3-28 16:32
刚刚我是ssh远程操作的,现在我在本机上操作又不存在这个问题了,怎么回事

估计是你远程的文件跟本机的文件编码不一样
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2023-3-28 17:05:46 From FishC Mobile | 显示全部楼层
或许你需要的是 tinyMediaManager 而非 prthon
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 0 反对 1

使用道具 举报

 楼主| 发表于 2023-3-29 00:38:26 | 显示全部楼层
赚小钱 发表于 2023-3-28 17:05
或许你需要的是 tinyMediaManager 而非 prthon

当作练习多好
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2023-3-29 00:38:56 | 显示全部楼层
isdkz 发表于 2023-3-28 16:37
估计是你远程的文件跟本机的文件编码不一样

可能Windows和Ubuntu不一样吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-11-14 21:09

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表