GNU/Linux >> Linux Esercitazione >  >> Ubuntu

Lsb_release – Impossibile convertire la stringa in float:"8.04 Lts"?

Tutto ciò che dipende da lsb_release il comando non funziona sul mio computer.

esempio:

pip install numpy

raise subprocess.CalledProcessError(code, cmd, stdout, stderr) subprocess.CalledProcessError:il comando 'lsb_release -a' ha restituito uno stato di uscita diverso da zero 1

E infatti, lsb_release -a genera un errore

File "/usr/bin/lsb_release", line 95, in <module>
    main()
  File "/usr/bin/lsb_release", line 59, in main
    distinfo = lsb_release.get_distro_information()
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 383, in get_distro_information
    distinfo = guess_debian_release()
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 281, in guess_debian_release
    get_distro_info(distinfo['ID'])
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 41, in get_distro_info
    RELEASES_ORDER.sort(key=lambda n: float(n[0]))
  File "/usr/lib/python3/dist-packages/lsb_release.py", line 41, in <lambda>
    RELEASES_ORDER.sort(key=lambda n: float(n[0]))
ValueError: could not convert string to float: '8.04 LTS'

Lo so in Python '8.04 LTS' non può essere convertito in un float , ma perché sta succedendo.

Ho provato a reinstallare entrambi lsb_release e python-pip ma questo non risolve il problema.

Sono su Ubuntu 16.04 LTS .
aiuto ?

Risposta accettata:

Ho avuto lo stesso errore su una delle mie macchine virtuali, le altre 2 e l'hypervisor andavano bene. Stessa versione (16.04.3), non ho idea di cosa l'abbia causata. È un bug noto.

Ho avuto un po' di sollievo qui

Modifica il file /usr/share/pyshared/lsb_release.py riga 41 da:

RELEASES_ORDER.sort(key=lambda n: float(n[0])) 

a:

RELEASES_ORDER.sort(key=lambda n: float(n[0].split()[0]))

Risolto il problema per me. Completa il credito a SHIINA Hideaki (shiina) al bug launchpad di Ubuntu. Lo sto solo ripubblicando qui.


Ubuntu
  1. Leggi un file orientato alla riga che potrebbe non terminare con una nuova riga?

  2. Un programma in grado di eseguire il buffering di Stdin o file?

  3. Pip3 dipendenza mancante?

  4. Come convertire un file Excel in un file Calc dalla riga di comando?

  5. Ripristino di backup non riuscito Ubuntu 16.04?

Converti i nomi dei file in minuscolo tramite la riga di comando di Ubuntu

Associazione di file a un'applicazione non elencata?

Aggiunta di una riga a un file solo se non esiste già

come limitare la lunghezza della stringa presente in una riga usando Linux

Converti i finali di riga Unix in Windows

sed:come sostituire la riga se trovata o aggiungere alla fine del file se non trovata?