質問: PythonでVisual studio Codeのデバッグ時に変数の内容を16進で 出来ないかと調べてみましたが、ウォッチ式で<変数名>,hで指定すると 16進数になると言うのを見かけたのですが、出来ませんでした。 Pythonでは無理なんでしょうか?
回答: ウォッチ式で表示する値は、ソースやデバッグコンソールで実行した時に表示される値と同じです。 `<変数名>,h`はC++での表記を参考にされたかもしれませんが、pythonでは単純に`変数h`と解釈されて出力されます。 ソースやデバッグコンソールで16進数を表示する時と同様の記述で16進数をウォッチできます。 `hex(<変数名>)` で数値を16進数にする方法が簡単だと思います。 なお手元の環境ではウォッチ式に下記の記述をすることで文字列の16進数表記を確認できました。 * `ord(hoge)` * `"{:x}".format(ord(hoge))` `:X`で大文字表記 * `binascii.hexlify(u.encode("utf-8"))` 要`import binascii` 蛇足ですが、ウォッチ式はprint文を使わないので`hoge, fuga, sep="&"`のようにprintで通用する構文はエラーになります。 !デバッグ時のスクリーンショット