Überlegen Sie bei gegebener Dezimalzahl, wie Sie eine Hexadezimalzahl erhalten. Als Beispiel möchte ich mit dem Int "227" die Hexadezimalzahl "e3" unten.
Wenn Sie normal darüber nachdenken, ist es so
hex(227)
'0xe3'
Ich will kein "0x". Sie können es als Zeichenfolge ersetzen, aber ...
hex(227).replace('0x','')
'e3'
Es ist nicht sehr klar.
Es gibt auch so etwas
'{:x}'.format(227)
'e3'
Etwas besser als ersetzen. .. ..
Aber ist es nicht etwas, das nicht schlauer wird?
Ich habe es dir in den Kommentaren gesagt. Wenn es 3.6 oder höher ist, können Sie es anscheinend mit ** formatiertem String-Literal ** so schreiben.
f'{227:02x}'
http://docs.python.jp/3.6/reference/lexical_analysis.html#f-strings
Es fühlt sich an wie ein abstrakteres Zeichenfolgenformat mit%. Leider sind viele DCC-Tools noch nicht mit der Serie 3 kompatibel. .. .. Warten Sie 2019 (war es?
int('e3',16)
227
int('0xe3',16)
227
Es erfordert viel Arbeit, um e3 von 227 zu bekommen, aber Sie können 227 von e3 auf einmal bekommen, oder?
Recommended Posts