我有一串字符需要转换为 ASCII 数字字符串,如何转换它?

I have string of characters that i need to turn to string of ASCII numbers, how to convert it?

我有通过以太网端口接收到的字符串,我已将其解码如下:

data, address = p1.recvfrom(1040)  
text = data.decode('ascii')
stri = ''  
for i in text:
    stri = + ord(i)  

有没有不需要循环的方法,可以马上给我相同的字符串?

如果你只是想最小化你的代码,你可以使用一行代码:

stri = ''.join(str(ord(c)) for c in text)

如果你真的不想使用循环,也可以使用 map 函数:

stri = ''.join(map(lambda c: str(ord(c)),text))

mapord 可以使它变得简单 这是例子

>>> reduce(lambda x, y: str(x)+str(y), map(ord,"hello world"))
'10410110810811132119111114108100'

来源:Convert string to ASCII value python