Comment réparer Python ValueError:mauvaises données marshal?

J’utilise Python 3 sur Raspberry PI et après un arrêt et une remise sous tension corrects du système, j’ai remarqué que Python ne fonctionnait plus.

Ce que j’ai fait est le suivant :

  1. sudo find /usr -name ‹ *.pyc › -delete sans sudo je ne peux pas supprimer
  2. mise à jour sudo et mise à niveau sudo

Tu n’as qu’a désinstaller et ré-installer Python depuis apt. Si c’est bien Python qui est corrompu.

Sans un log ou un exemple avec le message d’erreur, il n’est pas possible d’aider.

Bonjour,

La première commande de suppression des fichier *.pyc est très destructrice, bien au delà des librairies Python, plusieurs autres logiciels peuvent utiliser ces extensions. Théoriquement on n’intervient pas dans /usr c’est généralement ici que se trouvent le système d’exploitation et les logiciels. Ce sont les commandes apt, apt-get et consorts, qui sont utilisées pour gérer les bibliothèques.

Il est fort probable qu’a l’usage d’autres logiciels soient perturbés. Comme l’a conseillé @levelKro il faut désinstaller et réinstaller Python, au minimum et tous les autres logiciels dysfonctionnant. A mon avis, le plus sage serait de réinstaller totalement l’OS si les perturbations continuent.

A+

Les « .pyc » sont des fichier « Core » de Python, comme la dit @jelopo le dossier /usr, comme /etc sont des dossier systèmes (tout comme /var), tu peux éditer les sources si tu sais comment corrigé un bug (arrivé avec une librairie Python), mais tu ne doit pas les effacers. Sauf si il sont dans un dossier de projet, dans le /home, et qu’il n’ont pas été installé via un logiciel comme « pip ».

Tu trouvera par exemple des .pyc dans des projets, car il inclus dans ce dernier les librairies associés, à fin de faire marcher le code sans devoir installer des pré-requis ou que le code exige des versions précises ou modifiés. En bref, les fichiers .pyc sont important et ne sont pas des versions utilisable comme les simple .py, qui sont des scripts commun.