python断断续续的也学习一段时间了,慢慢用它来解决工作的问题。如果通过tcp传一些0x5e 0x5a等的字符命令给客户端,在C语言下写
char buf[2] = {0x5e, 0x5a}
....................................... //中间过程省略
send(sock_fd, buf, 2)
python socket的编写,比c容易多了,不用给麻烦的sockaddr_in赋值。只是send的参数必须是string
send(...)
send(data[, flags]) -> count
Send a data string to the socket.
开始脑袋没反应过来,怎么弄个string类型的把0x53,0x5a包含进去。看网上说struct.pack打包弄。那就太麻烦了。
后来一想,这不跟C语言一样的处理么,先把0x5e,0x5a存成字符型的,然后弄成字符串,再发出去。
a = [0x5e,0x5a]
c = []
for i in a:
c.append(chr(i)) #类似于c语言字符数组
str = ''.join(c) #把字符连成字符串
HOST=“222.111.112.204”
PORT = 102
ADDR = (HOST,PORT)
s = socket(AF_INET, SOCK_STREAM)
s.connect(ADDR)
s.send(str)