无法找到某些标签值

Trouble finding certain tag values

我正在尝试使用 pydicom 查找多个标签的值。由于某种原因,只有某些标签有效,而其他标签则无效。以下是解释我的问题的回溯。谁能找到解决 int() base 16 问题的方法?

>>> ds['0x18','0x21'].value
'SP'
>>> ds['0x18','13x14'].value
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/space/jazz/1/users/gwarner/anaconda/lib/python2.7/site-packages/pydicom-0.9.9-py2.7.egg/dicom/dataset.py", line 276, in __getitem__
tag = Tag(key)
  File "/space/jazz/1/users/gwarner/anaconda/lib/python2.7/site-packages/pydicom-0.9.9-py2.7.egg/dicom/tag.py", line 27, in Tag
arg = (int(arg[0], 16), int(arg[1], 16))
ValueError: invalid literal for int() with base 16: '13x14'

“13x14”不是 16 进制数的有效表示形式。

在python中,16进制数以'0x'为前缀,然后是16进制数。

例如:

0x0、0x1、0x001、0x235、0xA5F,...,都是有效的 16 进制数字表示法。


这个:

ds['0x18','13x14'].value

例如,可能是这样的:

ds['0x18','0x14'].value

它应该可以正常执行。