将ints格式化为十六进制的字符串 [英] Format ints into string of hex

查看:201
本文介绍了将ints格式化为十六进制的字符串的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我需要从随机整数列表(0-255)创建一个十六进制数字的字符串。每个十六进制数字都应该用两个字符表示:5 - 05,16 - 10等。



示例:


 输入:[0,1,2,3,127,200,255],
输出:000102037fc8ff


$ b




pre> #!/ usr / bin / env python

def format_me(nums):
result =
for i in nums :
如果i <= 9:
result + =0%x%i
else:
result + =%x%i
return结果

print format_me([0,1,2,3,127,200,255])

但是,这看起来有点尴尬。有没有更简单的方法?

解决方案

 ''。join('%02x'我为我输入)


I need to create a string of hex digits from a list of random integers (0-255). Each hex digit should be represented by two characters: 5 - "05", 16 - "10", etc.

Example:

Input: [0,1,2,3,127,200,255], 
Output: 000102037fc8ff

I've managed to come up with:

#!/usr/bin/env python

def format_me(nums):
    result = ""
    for i in nums:
        if i <= 9:
            result += "0%x" % i
        else:
            result += "%x" % i
    return result

print format_me([0,1,2,3,127,200,255])

However, this looks a bit awkward. Is there a simpler way?

解决方案

''.join('%02x'%i for i in input)

这篇关于将ints格式化为十六进制的字符串的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆