[python] Vytisknutí znaku, pokud zname jen decimálni hodnotu pomoci hexadecimalniho zapisu

David Rohleder davro na ics.muni.cz
Neděle Únor 10 18:51:13 CET 2013


Lisiak4 na seznam.cz píše v Ne 10. 02. 2013 v 08:36 -0800:
> Ahoj,
> 
> Začnu hned příkladem :)
> 
> Například znak "!" má decimální hodnotu v ASCII tabilce 33. Pokud si ji převedu na hexadecimální příkazem: hex(33), dostanu hodnotu 0x21. Tu ale nemůžu, nebo nevím vytisknout klasickým printem. Funguje formát: print"\x21". No nevím, jak bych mohl zprovoznit v printu formát zápisu 0x21, popřípadě jen 21, které dosáhnu pomocí zápisu přes modulo print "%x" %33. Formátovat řetězec, když je použito "\x\s" mi to nedovolí.. .
> 
> Jen uvedu, že tohle byl jen příklad. Řeším samozřejmě různá kódování, které ani Python nepodporuje. KOI8_CS, kódování KAMENICKÝCH a na platformě, kde mám k dispozici pouze jedno kódóvání. Klasicky se hraju s AmigaPythonem. Tohle ale zkouším samožřejmě pod Win, Python 2.7.2
> 

třeba pomocí formátovacího řetězce

a = 0x21
print "%x" % ( a, )


D.



Další informace o konferenci Python