>>> p=0xf
>>> y=0x8
>>> t=0x1
>>> print(int(p),int(y),int(t))
15 8 1

0xfは16進数なのになぜ16ではないのでしょうか
ということはこの8や1も機械らしく0から数えたものを指している?
int('0xf') + int('0xf')のようなものに32を期待しているのにこれでは30ではないかと困っています
え、そうだったのかという初心者なりの困惑もあります
困らないものなんでしょうか