[英]How do I convert 32b (four characters) from an int value to an ASCII string in python
[英]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'
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.