Python konzultace
Filip Zaludek
zaludek na cesnet.cz
Úterý Leden 9 16:21:43 CET 2001
Hello world!\n
Uz asi 150 let jsem si v teto konferenci nedelal ostudu,
nevim ani jestli toto nyni povazujete za ot. Kdyztak uvitam
link na python konferenci v cestine.
Mam nasledujici programek na vypocet crc16:
--------
#!/usr/bin/python
import os
s0= "./soubor1"
s1= open(s0, "rb")
s2= os.path.getsize(s0)
image= s1.read(s2)
crc= 0xffff
hash16=[
0x0000, 0xCC01, 0xD801, 0x1400, 0xF001, 0x3C00, 0x2800, 0xE401,
0xA001, 0x6C00, 0x7800, 0xB401, 0x5000, 0x9C01, 0x8801, 0x4400
]
for a0 in range(0x0,s2):
crc= hash16[(ord(image[a0]) ^ crc) & 0xf] ^ (crc >> 4)
crc= hash16[(ord(image[a0])>>4 ^ crc) & 0xf] ^ (crc >> 4)
print 'crc: 0x%04X' % crc
s1.close()
------
Nelibi se mi, ze pri pristupu k jednotlivym prvkum musim prevadet
pomoci ord(). Neni v tomto pripade lepsi pro image pouzit jiny typ
a nebo neda se pristupovat do image rovnou bajt po bajtu?!
Muze mi nejaky python guru nacrtnou, jak by se to dalo
zoptimalizovat(rychlost) na urovni pythonu?
A druha otazka. Jaktoze v pythonu neni goto?! :(
Vysvetluje to nekde Guido, nebo mi snad neco uniklo? ;)
( v perlu goto je :((( )
Diky!
Filip Zaludek
ps>
pokud je to ot, odpovedi prosim na soukromou adresu
Další informace o konferenci Linux