

PythonでVisual studio Codeのデバッグ時に変数の内容を16進で  
出来ないかと調べてみましたが、ウォッチ式で<変数名>,hで指定すると  
16進数になると言うのを見かけたのですが、出来ませんでした。  
Pythonでは無理なんでしょうか？


CC BY-SA 4.0
2018-12-26T16:45:18.687
51538
2019-03-11T13:03:40.723
2018-12-26T22:33:54.373
31397
31598
question
python vscode
Visual Studio Codeでのウォッチ式で16進表記方法


ウォッチ式で表示する値は、ソースやデバッグコンソールで実行した時に表示される値と同じです。  
`<変数名>,h`は[C++での表記](https://stackoverflow.com/q/39973214)を参考にされたかもしれませんが、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で通用する構文はエラーになります。  
![デバッグ時のスクリーンショット](https://i.stack.imgur.com/4e0wr.png)


CC BY-SA 4.0
2018-12-27T01:18:43.043
51541
2018-12-27T01:18:43.043
9820
51538
answer