使用pyinstaller打包时,出现UnicodeDecodeError。

1.写了一个小的启动器,可以快速找到指定文件夹中的电影,并启动,第一个版本已经写好,运行也没有问题,但是用pyinstaller打包时,出现了UnicodeDecodeError: 'gbk' codec can't decode byte 0xaf in position 160: illegal multibyte sequence。

2.代码:

import os

Path="e:\电影"
os.chdir(Path)
'''
存放文件路径的元组
'''
movieTupple=[]
def isFileContainWord(movieName):
            for each in movieTupple:
                        a=each.find(movieName)
                        if a!=-1 and a:
                                    print(each)
                                    return each
                                                
'''
遍历文件夹中所有的文件
'''
def getMovieInfo():      
            for fpathe,dirs,fs in os.walk(Path):
                        for f in fs:
                                    movieTupple.append(fpathe+'\\'+f)


movieName = input("请输入电影名:")
getMovieInfo()
moviePath=isFileContainWord(movieName)
os.system(moviePath)

3.pyinstaller打包时报错截图:

clipboard.png

4.代码中没有用到文件操作,网上的UnicodeDecodeError错误都是由于使用文件导致的。请指教!

阅读 4.8k
2 个回答

给2个尝试解决的建议~

1、要打包的文件放在英文目录下
2、cmd中输入chcp 65001

新手上路,请多包涵

看看是不是你的命令写错了。我之前多加了一个冒号

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进