在 Python 中以十六进制打印变量
使用 hex()
函数以十六进制打印变量,例如 print(hex(variable))
。 如果变量存储一个字符串,则对其进行迭代并将每个字符的 Unicode 代码点传递给 hex()
函数。
my_str = 'jiyik'
result = ' '.join(hex(ord(char)) for char in my_str)
print(result)
# ------------------------------------------
result = ' '.join(f'{ord(char):x}' for char in my_str)
print(result)
# ------------------------------------------
# ✅ 将字节转换为十六进制
my_bytes = b'\x61\x70\x6c\x65'
result = my_bytes.hex()
print(result) # 👉️ 61706c65
result = ' '.join(hex(i) for i in my_bytes)
print(result)
# ------------------------------------------
# ✅ 获取整数的十六进制表示
my_int = 90
result = hex(my_int)
print(result)
# ------------------------------------------
# ✅ 将整数列表转换为十六进制字符串
my_list = [3, 5, 90, 150, 185]
result = ''.join(f'{num:02x}' for num in my_list)
print(result)
前两个示例以十六进制打印字符串变量。
my_str = 'jiyik'
result = ' '.join(hex(ord(char)) for char in my_str)
print(result)
result = ' '.join(f'{ord(char):x}' for char in my_str)
print(result)
我们使用生成器表达式来迭代字符串。
生成器表达式用于对每个元素执行一些操作或选择满足条件的元素子集。
在每次迭代中,我们将当前字符传递给 ord()
函数以获取相应的 Unicode 代码点。
print(ord('a')) # 👉️ 97
print(ord('b')) # 👉️ 98
ord
函数接受一个表示 1 个 Unicode 字符的字符串,并返回一个表示给定字符的 Unicode 代码点的整数。
hex
函数将整数转换为以 0x 为前缀的小写十六进制字符串。
my_str = 'jiyik'
result = ' '.join(hex(ord(char)) for char in my_str)
print(result)
如果我们不需要使用 0x
作为十六进制字符串的前缀,请使用格式化的字符串文字。
my_str = 'jiyik'
result = ' '.join(f'{ord(char):x}' for char in my_str)
print(result)
格式化字符串文字(f-strings)让我们通过在字符串前面加上 f 来在字符串中包含表达式。
冒号后面的 x 字符代表十六进制格式。 它以 16 为基数输出冒号前的数字,对 9 以上的数字使用小写字母。
这些示例使用空格分隔符连接生成器对象,但我们可以使用任何其他分隔符,例如 一个冒号。
my_str = 'jiyik'
result = ':'.join(hex(ord(char)) for char in my_str)
print(result) # 👉️ 0x65:0x78:0x61:0x6d:0x70:0x6c:0x65
result = ':'.join(f'{ord(char):x}' for char in my_str)
print(result) # 👉️ 65:78:61:6d:70:6c:65
如果我们需要将字节对象转换为十六进制并打印结果,我们可以使用相同的方法。
my_bytes = b'\x61\x70\x6c\x65'
result = my_bytes.hex()
print(result) # 👉️ 61706c65
result = ' '.join(hex(i) for i in my_bytes)
print(result) # 👉️ 0x61 0x70 0x6c 0x65
bytes.hex
方法返回一个字符串,其中每个字节包含两个十六进制数字。
如果我们需要打印一个以十六进制存储整数的变量,请将其传递给 hex()
函数。
my_int = 90
result = hex(my_int)
print(result) # 👉️ 0x5a
如果我们需要将整数列表转换为十六进制字符串,请使用生成器表达式和格式化的字符串文字。
my_list = [3, 5, 90, 150, 185]
result = ' '.join(f'{num:02x}' for num in my_list)
print(result) # 👉️ 03 05 5a 96 b9
:02x
语法用于将每个值用前导零填充到固定宽度 2。
相关文章
Python pandas.pivot_table() 函数
发布时间:2024/04/24 浏览次数:82 分类:Python
-
Python Pandas pivot_table()函数通过对数据进行汇总,避免了数据的重复。
在 Python 中将 Pandas 系列的日期时间转换为字符串
发布时间:2024/04/24 浏览次数:894 分类:Python
-
了解如何在 Python 中将 Pandas 系列日期时间转换为字符串
在 Python Pandas 中使用 str.split 将字符串拆分为两个列表列
发布时间:2024/04/24 浏览次数:1124 分类:Python
-
本教程介绍如何使用 pandas str.split() 函数将字符串拆分为两个列表列。
在 Pandas 中将 Timedelta 转换为 Int
发布时间:2024/04/23 浏览次数:231 分类:Python
-
可以使用 Pandas 中的 dt 属性将 timedelta 转换为整数。
Python 中的 Pandas 插入方法
发布时间:2024/04/23 浏览次数:112 分类:Python
-
本教程介绍了如何在 Pandas DataFrame 中使用 insert 方法在 DataFrame 中插入一列。
使用 Python 将 Pandas DataFrame 保存为 HTML
发布时间:2024/04/21 浏览次数:106 分类:Python
-
本教程演示如何将 Pandas DataFrame 转换为 Python 中的 HTML 表格。
如何将 Python 字典转换为 Pandas DataFrame
发布时间:2024/04/20 浏览次数:73 分类:Python
-
本教程演示如何将 python 字典转换为 Pandas DataFrame,例如使用 Pandas DataFrame 构造函数或 from_dict 方法。
如何在 Pandas 中将 DataFrame 列转换为日期时间
发布时间:2024/04/20 浏览次数:101 分类:Python
-
本文介绍如何将 Pandas DataFrame 列转换为 Python 日期时间。