解決したいこと
'0xcd'などの16進数表記のstr型文字列を
'0b11001101'といった2進数に変換したい
取り組んだこと
関数として
def hexTobin(hex): return bin(hex)
のようなものを実現したいです。
bin(0xcd)
を行うと0b11001101
が出力されるので、簡単かと思ったのですが
いざbin('0xcd')
として、文字列を代入すると
TypeError: 'str' object cannot be interpreted as an index
と、str型を受け付けていないというエラーが発生します。
bin(hex)
といった代入ができ、変換した結果の出力ができればよいhex
は文字列
といった制限があるので、hexを何かしらの形で、binの引数としてふさわしい形式に変換し
2進数出力、ないしはbinを使わずにhex文字列を2進数出力できればと思います。
bin()
に代入する正しい形を調べようとはしましたが、
公式リファレンスでは単なるx
との表記で、入るべきtypeがわかりませんでした。
ほか、この関数を作った究極の目的としては、"符号付16進数を10進数に修正したい"といったものなので、
これが実現できれば、2進数を経由しなくてもよいです。
以上になります。解決方法についてご存知の方おられましたら、何卒お力添えください。

回答4件
あなたの回答
tips
プレビュー