float_struct.py 496 B

123456789101112131415161718
  1. # test struct package with floats
  2. try:
  3. try:
  4. import ustruct as struct
  5. except:
  6. import struct
  7. except ImportError:
  8. print("SKIP")
  9. raise SystemExit
  10. i = 1. + 1/2
  11. # TODO: it looks like '=' format modifier is not yet supported
  12. # for fmt in ('f', 'd', '>f', '>d', '<f', '<d', '=f', '=d'):
  13. for fmt in ('f', 'd', '>f', '>d', '<f', '<d'):
  14. x = struct.pack(fmt, i)
  15. v = struct.unpack(fmt, x)[0]
  16. print('%2s: %.17f - %s' % (fmt, v, (i == v) and 'passed' or 'failed'))