首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何修复Python ValueError:错误的编组数据?

如何修复Python ValueError:错误的编组数据?
EN

Stack Overflow用户
提问于 2015-06-16 02:54:49
回答 7查看 97.8K关注 0票数 64

在Ubuntu中运行flexget Python脚本,我得到一个错误:

代码语言:javascript
运行
复制
$ flexget series forget "Orange is the new black" s03e01
Traceback (most recent call last):
File "/usr/local/bin/flexget", line 7, in <module>
from flexget import main
File "/usr/local/lib/python2.7/dist-packages/flexget/__init__.py", line 11, in <module>
from flexget.manager import Manager
File "/usr/local/lib/python2.7/dist-packages/flexget/manager.py", line 21, in <module>
from sqlalchemy.ext.declarative import declarative_base
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/ext/declarative/__init__.py", line 8, in <module>
from .api import declarative_base, synonym_for, comparable_using, \
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/ext/declarative/api.py", line 11, in <module>
from ...orm import synonym as _orm_synonym, \
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/__init__.py", line 17, in <module>
from .mapper import (
File "/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/mapper.py", line 27, in <module>
from . import properties
ValueError: bad marshal data (unknown type code)
EN

回答 7

Stack Overflow用户

回答已采纳

发布于 2015-06-16 02:54:49

如果收到该错误,则Python模块的编译版本( .pyc文件)可能已损坏。Gentoo Linux提供了python-updater,但在Debian中有一种更简单的修复方法:删除.pyc文件。如果您不知道pyc,只需将它们全部删除(以root身份):

代码语言:javascript
运行
复制
find /usr -name '*.pyc' -delete
票数 132
EN

Stack Overflow用户

发布于 2019-03-15 00:42:21

在使用python3.7的setuptools中似乎也出现了某种回归。有关示例,请参阅- https://github.com/pypa/setuptools/issues/1257

强制重新安装setuptools解决了这个问题。

代码语言:javascript
运行
复制
sudo pip3 install --upgrade --force-reinstall setuptools
票数 32
EN

Stack Overflow用户

发布于 2015-06-16 11:31:53

只需删除

代码语言:javascript
运行
复制
/usr/local/lib/python2.7/dist-packages/sqlalchemy/orm/properties.pyc

正如文本所示,它已损坏。您可能必须以root的身份执行此操作。

在启动之后(同样是以root用户身份)运行python (2.7):

代码语言:javascript
运行
复制
/usr/bin/python -c "import sqlalchemy.orm.properties"

重新创建此.pyc文件。

如果不重新创建.pyc文件,程序的启动速度会比必要的慢,因为.py文件的加载时间比.pyc长(并且普通用户无法写入.pyc文件)。

票数 19
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30861493

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档