我试图在python 3.3中使用C char指针数据类型。我使用了以下代码:
from ctypes import *
firstname = c_char_p("I am a noob programmer".encode("utf-8"))
print(firstname.value)
我想要的输出是
I am a noob programmer
但我得到的是
b'I am a noob programmer'
我正在关注为python 2.6制作的教程。我使用“ascii”作为编码功能的参数。并尝试了“bytes()”而不是编码。但在任何时候都没有区别。为什么我没有得到我想要的输出?以及如何根据需要获得输出。
请有人帮我理解..
答案 0 :(得分:1)
在Python 3中,如果您希望它的行为类似str
,则需要将其解码回str
。
print(firstname.value.decode("utf-8"))