From 7b7ce7854c2e36d04adb42beec5f673071cf1fd4 Mon Sep 17 00:00:00 2001 From: "Gregory P. Smith" Date: Thu, 24 Jan 2008 09:38:26 +0000 Subject: Fix issue1789: The tutorial contained a misuse of the struct module. (also remove an unneeded import struct from test_largefile) --- Doc/library/struct.rst | 4 ++-- Doc/tutorial/stdlib2.rst | 8 +++++--- Lib/test/test_largefile.py | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/Doc/library/struct.rst b/Doc/library/struct.rst index d4952bb..d0960ed 100644 --- a/Doc/library/struct.rst +++ b/Doc/library/struct.rst @@ -85,7 +85,7 @@ Python values should be obvious given their types: +--------+-------------------------+--------------------+-------+ | ``i`` | :ctype:`int` | integer | | +--------+-------------------------+--------------------+-------+ -| ``I`` | :ctype:`unsigned int` | long | | +| ``I`` | :ctype:`unsigned int` | integer or long | | +--------+-------------------------+--------------------+-------+ | ``l`` | :ctype:`long` | integer | | +--------+-------------------------+--------------------+-------+ @@ -104,7 +104,7 @@ Python values should be obvious given their types: +--------+-------------------------+--------------------+-------+ | ``p`` | :ctype:`char[]` | string | | +--------+-------------------------+--------------------+-------+ -| ``P`` | :ctype:`void \*` | integer | | +| ``P`` | :ctype:`void \*` | long | | +--------+-------------------------+--------------------+-------+ Notes: diff --git a/Doc/tutorial/stdlib2.rst b/Doc/tutorial/stdlib2.rst index 14c60dd..73a896d 100644 --- a/Doc/tutorial/stdlib2.rst +++ b/Doc/tutorial/stdlib2.rst @@ -134,8 +134,10 @@ Working with Binary Data Record Layouts The :mod:`struct` module provides :func:`pack` and :func:`unpack` functions for working with variable length binary record formats. The following example shows -how to loop through header information in a ZIP file (with pack codes ``"H"`` -and ``"L"`` representing two and four byte unsigned numbers respectively):: +how to loop through header information in a ZIP file without using the +:mod:`zipfile` module. Pack codes ``"H"`` and ``"I"`` represent two and four +byte unsigned numbers respectively. The ``"<"`` indicates that they are +standard size and in little-endian byte order:: import struct @@ -143,7 +145,7 @@ and ``"L"`` representing two and four byte unsigned numbers respectively):: start = 0 for i in range(3): # show the first 3 file headers start += 14 - fields = struct.unpack('LLLHH', data[start:start+16]) + fields = struct.unpack('