Mam listę tysięcy elementów formy tak:Jak mogę ocenić listę ciągów jako listę krotek w Pythonie?
pixels = ['(112, 37, 137, 255)', '(129, 39, 145, 255)', '(125, 036, 138, 255)' ...]
Próbuję przekonwertować te elementy ciągów do krotek korzystających ast.literal_eval
, ale łamie po napotkaniu rzeczy jak wiodącymi zerami (np pokazany trzeci łańcuch) z błędem SyntaxError: invalid token
.
pixels = [ast.literal_eval(pixel) for pixel in pixels]
Jaki byłby dobry sposób na radzenie sobie z takimi rzeczami i uzyskanie listy list ocenianych jako lista krotek?
@BhargavRao Cyfry ósemkowe w Pythonie 3 nie obsługują formatu 0xx. –
@BhargavRao Witaj. Określony błąd to '' SyntaxError: invalid token''''. Właśnie dodałem to pytanie. – d3pd
@BhargavRao Wiodące '0' w Pythonie 2.x było ósemkowym dosłownym. W Pythonie 3.x nie jest to już dozwolone. Na przykład '055' jest liczbą ósemkową dla wartości dziesiętnej" 45 ". – CoryKramer