我有一串字符需要转换为 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))
map
和 ord
可以使它变得简单
这是例子
>>> reduce(lambda x, y: str(x)+str(y), map(ord,"hello world"))
'10410110810811132119111114108100'
来源:Convert string to ASCII value python
我有通过以太网端口接收到的字符串,我已将其解码如下:
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))
map
和 ord
可以使它变得简单
这是例子
>>> reduce(lambda x, y: str(x)+str(y), map(ord,"hello world"))
'10410110810811132119111114108100'
来源:Convert string to ASCII value python