Converting a string to a number by using INT (no hash method)
Alan Spence
alan.spence at ntlworld.com
Tue Jan 22 15:00:12 EST 2013
On 22 Jan 2013, at 19:28, Ferrous Cranus <nikos.gr33k at gmail.com> wrote:
> Τη Τρίτη, 22 Ιανουαρίου 2013 9:02:48 μ.μ. UTC+2, ο χρήστης Michael Torrie έγραψε:
>> On 01/22/2013 11:37 AM, Ferrous Cranus wrote:
>>
>>> ============================================== pin = int(
>>
>>> htmlpage.encode("hex"), 16 ) % 10000
>>
>>> ==============================================
>>
>>>
>>
>>> Can you please explain the differences to what you have posted
>>
>>> opposed to this perl coding?
>>
>>>
>>
>>> ============================================== foreach my
>>
>>> $ltr(@ltrs){ $hash = ( $hash + ord($ltr)) %10000;
>>
>>> ==============================================
>>
>>>
>>
>>> I want to understand this and see it implemented in Python.
>>
>>
>>
>> It isn't quite the thing. The perl code is merely a checksum of the
>>
>> ascii value of the characters in the file name, that is then chopped
>>
>> down to a number < 10000. The Python code is taking the ascii value of
>>
>> each character in the file name, converting it to a hexadecimal pair of
>>
>> digits, stringing them all out into a long string, then converting that
>>
>> to a number using the hexadecimal number parser. This results in a
>>
>> *very* large number, 8-bits per letter in the original file name, and
>>
>> then chops that down to 10000. Technically neither method is a hash and
>>
>> neither will generate unique numbers.
>>
>>
>>
>> Here's the python algorithm used on a short word:
>>
>> 'hello' => '68656c6c6f' (h = 0x68', e=0x65', 0x6c', 0=0x6f)
>>
>> => 0x68656c6c6f => 448378203247
>>
>> mod that with 10000 and you get 3247
>>
>>
>>
>> If you would simply run the python interpreter and try these things out
>>
>> you could see how and why they work or not work. What is stopping you
>>
>> from doing this?
>
>
> May i sent you my code by mail so for you see whats wrong and http://superhost.gr produces error?<br><br>
>
> 1. this is not a script that iam being paid for.
> 2, this is not a class assignemnt
>
> I just want to use that method of gettign this to work.
> --
> http://mail.python.org/mailman/listinfo/python-list
All pages, strings and objects map to:
http://redwing.hutman.net/~mreed/warriorshtm/ferouscranus.htm
Alan
More information about the Python-list
mailing list