You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python中如何将字符串格式十六进制转为十六进制数值存入列表?

如何将字符串格式的十六进制转为数值型十六进制存储?

你的问题核心在于:hex()函数返回的是字符串类型的十六进制表示,而你需要的是存储整数(Python中0x61本质是十进制97的十六进制写法,属于整数类型)。

解决方案

Python中没有单独的「十六进制数值类型」,0x61和97是同一个整数的不同表示形式。所以只需要直接存储字符的ASCII整数值即可,后续可按需以十六进制格式展示。

修改后的函数可以简化为:

def make_key(s: str): 
    return [ord(c) for c in s]

key = make_key('aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa')
# 直接打印会显示十进制整数列表
print(key)
# 若要以十六进制格式展示列表内容,可自定义输出格式
print(f"[{', '.join(f'0x{num:02x}' for num in key)}]")

说明

  1. 存储逻辑:ord(c)直接返回字符的ASCII整数值,比如ord('a')返回97,这个值和0x61完全等价,Python在存储时不会区分进制,只保留数值本身。
  2. 显示逻辑:如果需要输出0x61格式的内容,不用修改存储的数值,只需通过格式化字符串(如f'0x{num:02x}')将整数转换为十六进制格式的字符串即可。

内容的提问来源于stack exchange,提问作者glasshope

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 17:45:48