Python pip freeze, ez miért? Mi ez egyáltalán?
csináltam egy virtualenv-et, aktiváltam, betöltöttem a click-et, pip freezeltem, majd a pip freeze fájlból akarnám beolvastatni amit belerakott, de... ezt hozza ki:
"
˙ţclick==8.0.3
colorama==0.4.4
" <--- Ez a file.read() tartalma.
"['˙ţc\x00l\x00i\x00c\x00k\x00=\x00=\x008\x00.\x000\x00.\x003\x00', '\x00', '\x00c\x00o\x00l\x00o\x00r\x00a\x00m\x00a\x00=\x00=\x000\x00.\x004\x00.\x004\x00',
'\x00', '\x00']
" ez a file.read().split('\n') tartalma.
ha megnyitom a txt-t akkor rendesen ezeket írja ki:
click==8.0.3
colorama==0.4.4
Kódolás UTF-8, más ötletem nincs, miért csinálhatná ezt...
Dummy kód amivel beolvastatom:
A büdös életbe, miután kitettem a kérdést vettem észre hogy a pip freeze vmiért megváltoztatja az encodingot utf-16-ra...
megoldás: (*csillagok* közötti rész)
with open("requirements.txt","r"*, encoding="utf-16"*) as reqfile:
Nem értem, miért kódolja neked utf-16-ba, nekem sima ascii-t köpött ki a freeze.
Ez volt nálam: [link]
Milyen python és pip verziód van?
Én se értem a dolgot.
Mindenből a legújabb van, python 3.8 vagy 9,a 3.10 4-én jött ki de még nem frissítettem rá.
Pip verzió valami 21.3.1? Vagy 21.3.
Valamiféle telepítőt hozok össze, a req.txt-be freezelem a venv csomagjait és a progu azt használva telepíti be azokat automatikusan.
Szerintem az installálásra használd a pipet. Sajnos a pip nem ad apit, úgyhogy subprocessként kell használni:
import subprocess
import sys
subprocess.check_call([sys.executable, '-m', 'pip', 'install', '-r', 'requirements.txt'])
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!