python - 如何在 Python 中处理和转换不同的碱基而不将它们解析为字符串?
问题描述
我有一个十六进制数字,我需要将其转换为二进制,以便能够对其执行按位运算。问题是我发现的所有将数字转换为二进制的函数(例如 format())都返回字符串,但我需要可以像二进制一样操作的数据类型中的数字。
找到 fomrat(),但返回字符串。我找到了 int(),它可以把它变成一个整数,但是找不到二进制的等价物。
例如,我正在尝试做的是:将 1 添加到 0b0001 并将总和设为 0b0010,当 0b0001 是字符串时,我没有找到这样做的方法。
解决方案
无论你如何输入一个整数,Python 都会一视同仁。这意味着您可以完全按照您的期望进行数学运算。例如:
hex_num = 0xff
# We can show its binary equivalent
format(hex_num, 'b')
# We can also do math with it
result = hex_num + 1
# including bitwise operations
result2 = hex_num << 1
format
然后,您可以使用类似或bin
您已经找到的功能以您想要的任何格式输出结果。关键是“十六进制数”、“二进制数”或普通整数之间在内部没有区别。
推荐阅读
- javascript - 如何为每个工作人员负载平衡 1 个任务?
- python - Python中的随机梯度下降
- amazon-web-services - S3 和 .net Amazon SDK - 无法下载文件
- sqlite - 不包括 sqlite 在哪个系统上
- python - 在 PySpark 中提取特定行
- python - 这个字符串在 seaborn 散点图的调色板参数中是什么意思?
- c - 有没有一种简单的方法可以在 FPGA 上运行的 C 程序中与网页进行交互?
- php - WebSocket 连接失败:连接建立错误:net::ERR_CONNECTION_TIMED_OUT
- tfs - 无法在 TFS 中查看集合或项目
- c++ - 建议重构以下形式的 if 语句?