۱۹-مهر-۱۳۹۶, ۰۳:۳۰:۳۱
سلام،
من قصد دارم تا بایت های یک فایل که تو حافظه مپ کردم بخونم.. یک کتابخونه پایتون پیدا کردم که همین کار و میکنه داخل کد هاش برای خواندن بایت ها از دستور زیر استفاده میکنه:
خروجی میشه 1377629629
اما وقتی کد به این صورت زیر تغییر میدم نتیجه عوض میشه و نتیجه دقیقا برابر با عبارتی است که ابزار hex editor من نشون میده
خروجی میشه bdf51c52
چرا از struct.unpack استفاده میکنه؟ یعنی چه نیازی هست که استفاده بشه؟
من قصد دارم تا بایت های یک فایل که تو حافظه مپ کردم بخونم.. یک کتابخونه پایتون پیدا کردم که همین کار و میکنه داخل کد هاش برای خواندن بایت ها از دستور زیر استفاده میکنه:
کد:
magic = struct.unpack('<L', m[0:8])[0]
خروجی میشه 1377629629
اما وقتی کد به این صورت زیر تغییر میدم نتیجه عوض میشه و نتیجه دقیقا برابر با عبارتی است که ابزار hex editor من نشون میده
کد:
magic = m[0:8]
خروجی میشه bdf51c52
چرا از struct.unpack استفاده میکنه؟ یعنی چه نیازی هست که استفاده بشه؟