如何使用for-loop Python实现二进制到十六进制的转换器

2024-06-02 08:28:22 发布

您现在位置:Python中文网/ 问答频道 /正文

是的,这是家庭作业。 我有基本的想法。我知道基本上我需要引入一个for循环,并设置if,表示如果值大于9,那么它就是a,b,c,等等。但我需要的是让for循环抓取整数和它的索引数,然后来回计算,然后打印出十六进制。顺便说一下,它是一个8位二进制数,必须以两位数的十六进制形式出现。在

非常感谢!!在


Tags: forif二进制整数形式家庭作业两位数
2条回答

因此,假设在字符串中有二进制数,那么您需要一个索引变量,该变量随着for循环的每次迭代而递增。我不打算给你确切的代码,但是考虑一下:

  • Python's for loop用于将索引变量(forindexinlist)设置为值列表中的每个值。在
  • 您可以使用^{}函数生成一个数字列表(例如,从0到7)。在
  • 您可以使用例如binary[index]来获得字符串中给定索引处的字符。在

我假设你有一个包含二进制数据的字符串。在

在Python中,可以迭代所有类型的内容,包括字符串。就这么简单了:

for char in mystring:
    pass

并将pass替换为您的套件(一个术语,意思是“代码块”)。此时,char将是一个字符串。不错,直截了当。在

要获得字符序数,请研究ord(自己寻找帮助,这不难,而且是很好的实践)。在

要将数字转换为十六进制,可以使用%字符串格式与'%x'一起使用,这将产生一个类似“9f”的值,或者可以使用hex函数,它将产生一个类似于“0x9f”的值;还有其他方法。在

如果你什么都想不出来,那就去问吧;但要先把它弄清楚。这是你的家庭作业。:-)

相关问题 更多 >