How to know that two pyc files contain the same code

Bl0ckeduser bl0ckedusersoft at gmail.com
Sat Mar 10 10:08:18 EST 2012


Gelonida N wrote:
> Hi,
>
> I want to know whether two .pyc files are identical.
>
> With identical I mean whether they contain the same byte code.
>
> Unfortunately it seems, that .pyc files contain also something like the
> time stamp of the related source file.
>
> So though two pyc files contain the same byte code, they will not be
> byte identical.
>
> One option, that I found is to use
> python -m unpyclib.application -d filename.pyc and check whether the
> results are identical.
>
>
> However even this will fail if the files were not compiled under the
> same absolute path name as the source filename is contained twice  (at
> least for my trivial example) in the disassemblers output.
>
>
> Thanks a lot for any other idea.
>

Try using the disassembler code here:

http://nedbatchelder.com/blog/200804/the_structure_of_pyc_files.html

and removing from it the parts which print out the timestamp and the 
absolute path. (Two different lines in the source). That seems to work 
for me.






More information about the Python-list mailing list