在Python中主机到网络字节顺序转换为float

时间:2011-09-17 21:33:03

标签: python floating-point endianness

我有这个代码,我想主持网络浮动值(t& u)

    #! /usr/bin/env python
import socket
import sys, struct
x = int(sys.argv[1])
y = int(sys.argv[2])
z = socket.htons(int(sys.argv[3]))
t = float(sys.argv[4]) # I want to do (socket.htonf) or something similar but only (htonl) is there
u = float(sys.argv[5])
sys.stdout.write(struct.pack('BBhff',x,y,z,t,u))

注意:这些参数的值在另一个文本文件中,我从那里得到这些值

./python.py `cat args-file` > /somewhere

我是Python的初学者,非常感谢任何帮助。

谢谢大家

1 个答案:

答案 0 :(得分:2)

struct模块支持格式字符串中的字节顺序说明符:http://docs.python.org/library/struct.html#byte-order-size-and-alignment