What's wrong here?
>>from struct import unpack
I can unpack an unsigned char
>>unpack('B','\x90')
(144,)
I can unpack a short
>>unpack('h','\x06\x00')
(6,)
But an unsigned char & a short give me this
>>unpack('Bh','\x90\x06\x00')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
struct.error: unpack str size does not match format
>>>
3 1909
In <11*********************@h3g2000cwc.googlegroups.c om>, Chris Garland
wrote:
But an unsigned char & a short give me this
>>>unpack('Bh','\x90\x06\x00')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
struct.error: unpack str size does not match format
Let's pack this:
In [90]: pack('Bh', 0x90, 0x6)
Out[90]: '\x90\x00\x06\x00'
Per default the values are (un)packed with the preferred alignment of the
C compiler, so here is an extra byte to place the short at an even
address. If you give the endianess in the format string there's no
padding:
In [91]: pack('<Bh', 0x90, 0x6)
Out[91]: '\x90\x06\x00'
Ciao,
Marc 'BlackJack' Rintsch
The problem is, that len('\x90\x06\x00') is not equivalent to
calcsize('Bh'):
>>calcsize('Bh')
4
>>len('\x90\x06\x00')
3
Actually calculating the size for 'hB' results in:
>>calcsize('hB')
3
So far I have not figured out, why there is an additional byte, but it
does not effect the result in any way. (Or I simply did not insert any
byte that would cause an effect.)
So
>>unpack('Bh', '\x90\x??\x06\x00')
(144,6)
with ?? as any valid hex, gives the "correct" result, but I dont know
why either.
On Mar 1, 10:17 pm, "Chris Garland" <chrisgarlan...@gmail.comwrote:
What's wrong here?
>from struct import unpack
I can unpack an unsigned char>>unpack('B','\x90')
(144,)
I can unpack a short>>unpack('h','\x06\x00')
(6,)
But an unsigned char & a short give me this>>unpack('Bh','\x90\x06\x00')
Traceback (most recent call last):
File "<stdin>", line 1, in ?
struct.error: unpack str size does not match format
Ok, that solves my confusion.
Thanks, Marc. This thread has been closed and replies have been disabled. Please start a new discussion. Similar topics
by: Dave Benjamin |
last post by:
Hey all,
I just realized you can very easily implement a sequence grouping function
using Python 2.3's fancy slicing support:
def group(values, size):
return map(None, * for i in...
|
by: Victor S. Miller |
last post by:
I'm sure that this has been asked and answered before, but about 1/2
hour of searching hasn't turned up anything.
I have external data that requires the packing and unpacking of
long vectors of...
|
by: george young |
last post by:
I came across an cool python feature that I've not seen discussed.
This may be *implied* by the language reference manual
http://docs.python.org/ref/assignment.html], but it was never
obvious to...
|
by: Paul McGuire |
last post by:
I'm trying to manage some configuration data in a list of tuples, and I
unpack the values with something like this:
configList =
for data in configList:
name,a,b,c = data
... do something...
|
by: Chris |
last post by:
Hi
I'm attempting to write a client for an existing p2p network.
The protocol defines that ints are packed into 4 bytes for transfer.
// Creating the byte vector using the following is fine:...
|
by: Claudio Grondi |
last post by:
I need to unpack on a Windows 2000 machine
some Wikipedia media .tar archives which are
compressed with TAR 1.14 (support for long file
names and maybe some other features) .
It seems, that...
|
by: tkpmep |
last post by:
I have a list y
>>>y
from which I want to extract only the 2nd and 4th item by partially
unpacking the list. So I tried
>>>a,b = y
Traceback (most recent call last):
File "<interactive...
|
by: John Salerno |
last post by:
I'm a little confused, but I'm sure this is something trivial. I'm
confused about why this works:
('more', 'less'),
('something', 'nothing'),
('good', 'bad'))
(('hello', 'goodbye'), ('more',...
|
by: ram |
last post by:
Stupid question #983098403:
I can't seem to pass an unpacked sequence and keyword arguments to a
function at the same time. What am I doing wrong?
def f(*args, **kw):
for a in args:
print...
|
by: Martin Geisler |
last post by:
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
iEYEARECAAYFAkjlQNwACgkQ6nfwy35F3Tj8ywCgox+XdmeDTAKdN9Q8KZAvfNe4
0/4AmwZGClr8zmonPAFnFsAOtHn4JhfY
=hTwE
-----END PGP...
|
by: DolphinDB |
last post by:
The formulas of 101 quantitative trading alphas used by WorldQuant were presented in the paper 101 Formulaic Alphas. However, some formulas are complex, leading to challenges in calculation.
Take...
|
by: DolphinDB |
last post by:
Tired of spending countless mintues downsampling your data? Look no further!
In this article, you’ll learn how to efficiently downsample 6.48 billion high-frequency records to 61 million...
|
by: isladogs |
last post by:
The next Access Europe meeting will be on Wednesday 6 Mar 2024 starting at 18:00 UK time (6PM UTC) and finishing at about 19:15 (7.15PM).
In this month's session, we are pleased to welcome back...
|
by: jfyes |
last post by:
As a hardware engineer, after seeing that CEIWEI recently released a new tool for Modbus RTU Over TCP/UDP filtering and monitoring, I actively went to its official website to take a look. It turned...
|
by: ArrayDB |
last post by:
The error message I've encountered is; ERROR:root:Error generating model response: exception: access violation writing 0x0000000000005140, which seems to be indicative of an access violation...
|
by: PapaRatzi |
last post by:
Hello,
I am teaching myself MS Access forms design and Visual Basic. I've created a table to capture a list of Top 30 singles and forms to capture new entries. The final step is a form (unbound)...
|
by: CloudSolutions |
last post by:
Introduction:
For many beginners and individual users, requiring a credit card and email registration may pose a barrier when starting to use cloud servers. However, some cloud server providers now...
|
by: af34tf |
last post by:
Hi Guys, I have a domain whose name is BytesLimited.com, and I want to sell it. Does anyone know about platforms that allow me to list my domain in auction for free. Thank you
|
by: Faith0G |
last post by:
I am starting a new it consulting business and it's been a while since I setup a new website. Is wordpress still the best web based software for hosting a 5 page website? The webpages will be...
| |