Ò׽ؽØͼÈí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB
ÈÈÃűêÇ©£º c c# c++ asp asp.net linux php jsp java vb Python Ruby mysql sql access Sqlite sqlserver delphi javascript Oracle ajax wap mssql html css flash flex dreamweaver xml
 ×îÐÂÎÄÕ : Python

ÓÃpythonʵÏÖcrc32Çó×Ö·û´®Ð£ÑéÂë


תÌû£º
http://blog.csdn.net/wyingquan/archive/2008/12/20/3561094.aspx
ÓÃpython×Ô´øµÄbinasciiÄ£¿é¼ÆËã×Ö·û´®µÄУÑéÂ룬³öÀ´µÄÊǸºÖµ£¬ÓëÓÃcдµÄ³ÌÐòµÃ³öµÄУÑéÂë²»Ò»Ñù£¬ËùÒÔ¾ÍÑо¿ÁËһϡ£·¢ÏÖ±ðÈËÓõÄpython3.0°æ±¾binasciiÄ£¿é¼ÆËã³öµÄcrc32УÑéÂëÊÇÎÒÏëÒªµÄ£¬Ã»°ì·¨Ö»ºÃ×Ô¼ºÓÃpythonʵÏÖÒ»ÏÂcrc32µÄËã·¨ÁË¡£·¢ÏÖËã·¨ºÜ¼òµ¥£¬¾ÍÊÇijЩʵÏÖÀïÃæŪÁ˺ü¸¸öº¯Êýµ¹¸ã¸´ÔÓÁË£¬Æäʵ°´ºËÐÄËã·¨Ëã·¨×ßÒ»±ßºÜÈÝÒ×¾ÍÀí½âºÍÓ¦ÓÃÁË¡£
ÒòΪֱ½Ó´Óc³ÌÐòת¹ýÀ´µÄ£¬½á¹û·¢ÏÖpython2.5£¨ÎÒÓõİ汾ActivePython 2.5.2.2 (ActiveState Software Inc.) based on
Python 2.5.2 (r252:60911, Mar 27 2008, 17:57:18) [MSC v.1310 32 bit (Intel)] on win32)ÀïÃæµÄ°´Î»È¡·´¾¡È»²»ÊÇ°´Î»È¡·´£¬ÍøÉÏËѳöºÃ¶àÎÄÕ¶¼Ëµ¡«ÔÚpythonÖÐÊÇ°´Î»È¡·´£¬×Ô¼º²âÊÔÁËÏ£º
>>> ~3,~2,~1,~0,~-1,~-2,~3
(-4, -3, -2, -1, 0, 1, -4)
²Å»ÐÈ»´óÎò£¬Ô­À´ÊÇÕâÀï³ö´íÁË¡£
ÔÙ¿´£º
>>> import binascii
>>> binascii.crc32("ÎÒÃÇ")
-603163415
Èç¹û°ÑÏÂÃæ´úÂëµÄµ¹ÊýµÚ¶þÐÐ
dwCrc32 = dwCrc32 ^ 0xFFFFFFFFL
¸Ä³É
dwCrc32 = ~dwCrc32
È»ºóÔËÐУºmycrc32("ÎÒÃÇ") µÃµ ......

pythonµÄÒì³£Exception


Python µÄÒì³£´¦Àí»úÖÆ
Python´úÂë 
 try:    
  raise Exception("a", "b")    
    except Exception,e:    
  print e    
    finally:    
  print "final"    
('a', 'b')('a', 'b')    
final    
ͬÑù¿ÉÒÔ´¦Àí¶à¸öÒ쳣ɸѡ¡£
Python´úÂë 
 try:    
  raise EOFError("aa", "bb")    
    except RuntimeError, e:    
  print "[RuntimeErro]: ", e    
    except EOFError, e:    
  print "[EOFError]: ", e    
    except Exception, e:    
  print "[Error]: ", e    
    finally:    
  print "final"    
[EOFError]:  ('aa', 'bb')    
final    
³ýÁËÒì³£²ÎÊý£¬ÎÒÃÇ»¹¿ÉÒÔÓÃsysµÄһЩ·½·¨À´»ñÈ¡Òì³£ÐÅ ......

PythonÒì³£´¦ÀíÌåϵ¼ò½é

PythonÄÚ½¨Òì³£Ìåϵ½á¹¹
BaseException
+--¡¡SystemExit
+--¡¡KeyboardInterrupt
+--¡¡GeneratorExit
+--¡¡Exception
+--¡¡StopIteration
+--¡¡StandardError
|¡¡¡¡¡¡¡¡+--¡¡BufferError
|¡¡¡¡¡¡¡¡+--¡¡ArithmeticError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡FloatingPointError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡OverflowError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡ZeroDivisionError
|¡¡¡¡¡¡¡¡+--¡¡AssertionError
|¡¡¡¡¡¡¡¡+--¡¡AttributeError
|¡¡¡¡¡¡¡¡+--¡¡EnvironmentError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡IOError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡OSError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡+--¡¡WindowsError¡¡(Windows)
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡¡+--¡¡VMSError¡¡(VMS)
|¡¡¡¡¡¡¡¡+--¡¡EOFError
|¡¡¡¡¡¡¡¡+--¡¡ImportError
|¡¡¡¡¡¡¡¡+--¡¡LookupError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡IndexError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡KeyError
|¡¡¡¡¡¡¡¡+--¡¡MemoryError
|¡¡¡¡¡¡¡¡+--¡¡NameError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡UnboundLocalError
|¡¡¡¡¡¡¡¡+--¡¡ReferenceError
|¡¡¡¡¡¡¡¡+--¡¡RuntimeError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡NotImplementedError
|¡¡¡¡¡¡¡¡+--¡¡SyntaxError
|¡¡¡¡¡¡¡¡|¡¡¡¡¡¡¡¡+--¡¡Indenta ......

»°ËµPython£¨Ð´ÔÚÇ°ÃæµÄ»°£©

±¾ÏµÁÐÎÄÕ²»»á½éÉÜÖîÈç°²×°PythonÖ®ÀàµÄÎÊÌ⣬Ҳ²»Ïëд³É¹ØÓÚPythonµÄ½Ì¿ÆÊé¡£ÊÂʵÉ϶ÔÓÚ³ÌÐòÔ±£¬Python¸ù±¾²»ÐèÒªºñºñµÄÈëÃÅÊé¼®£¬ÊÖ±ßÒ»±¾PythonÎĵµ¼´¿É¡£ÒòΪÄã»á·¢ÏÖ£¬ÊÔ×ÅÖ´ÐÐÒ»¶ÎÄãÈÏΪ¿ÉÄܳɹ¦µÄ´úÂ룬Python»áÏñÆÚÍûµÄÄÇÑùÔËÐС£
ÎÄÕ½«»á½éÉÜÁ½Î»Ö÷È˹«£ºÐ¡²ËºÍС°×£¬Á½ÈËÊÇ´óÈýѧÉú£¬Ñ§Ï°¹ýCºÍJava¿Î³Ì¡£±¾ÎļÙÉèÄúÓÐCÓïÑÔ±à³Ì»ù´¡£¬µ±È»£¬Ö»ÒªÁ˽âCÓïÑÔÓï·¨¼´¿É£¬²»ÐèҪ̫Éî°ÂµÄCÓïÑÔ֪ʶ¡£
±¾ÎÄÊÔͼͨ¹ýһϵÁÐÓÉdzÈëÉîµÄÀý×ÓºÍѧϰÖеĶԻ°£¬ÏòÄúÕ¹ÏÖPython±à³ÌµÄ·½±ãºÍ¿ì½Ý£¬×îÖÕÕâЩÀý×Ó»áÀ©Õ¹³ÉÒ»¸öСÐÍËÑË÷ÒýÇ档ֻҪû²úÉú´úÂëÔĶÁÀ§ÄÑ£¬±¾ÎĽ«²»»á¶ÔÆäËüµÄÓï·¨½øÐнâÊÍ£¬Èç¹ûÄú¶ÔPythonºÜ¸ÐÐËȤ£¬ÇëÔĶÁÎÒÏÂÃæÍƼöµÄÊé¼®¡£
½ö¹©²Î¿¼£º
1.      Èç¹ûÄúÏëÑ°ÕÒÒ»±¾½Ì¿ÆÊ飬ÍƼö¡¶PythonºËÐıà³Ì¡·ºÍ¡¶Python¼¼Êõ²Î¿¼´óÈ«¡·¡£
2.      ÏÐϾµÄʱºò²»·Á¶Áһϡ¶¿É°®µÄPython¡·£¬Ëü¾ÍÏñÒ»±­¿§·È¡£
3.      Ç¿ÁÒ½¨ÒéÏÂÔØ¡¶Python Standard Library¡·£¬Ëü¿ÉÒÔËã×öÖÐÎÄ°æµÄPythonÎĵµÁË¡£
4.      ¶©ÔÄPythonÓʼþÁÐ±í£¬Ëü»áºÜÓÐÓá£
5.  ......

»°ËµPython£¨Ò»£©

С°×ºÍС²ËÊÇ´óѧͬѧ£¬Õâ²»¿ìÒª±ÏÒµÁË£¬Á©ÈËÒ»ºÏ¼Æ£¬ÕÒ¸öÅàѵ°àѧµã¶«Î÷£¬Îä×°Ò»ÏÂÍ·ÄÔ£¬Ë³±ã½â¾ö¾ÍÒµÎÊÌâ¡£
“ÄãÃÇÒª±¨Äĸö°à°¡£¿”½Ó´ýËûÃǵÄÄêÇáС½ãÈÈÐĵØÎʵÀ¡£
“ÄãÃÇÕâÀïÄĸö°à×îºÃ£¿”С°×²»¼Ù˼Ë÷µØ˵£¬“µ±È»ÊDZ¨×îºÃµÄ°àÀ²¡£”
“ÎÒÃǹ«Ë¾µÄÅàѵÏîÄ¿¶¼ºÜºÃ”С½ãЦµÀ£¬“²»¹ýC++ºÍJavaµÄÅàѵ°à×î»ðÁË£¬C++ÓÐMFC¡¢.Net·½Ïò£¬JavaÓÐSpring¡¢Hibernate……”¡£
“»¹ÓÐûÓбðµÄ£¿”С²Ë´ò¶ÏÁËËýµÄ»°£¬“¼òµ¥µãµÄ£¬ºÙºÙ¡£”
С½ã·­ÁË·­×ÀÍ·µÄÎļþ£¬»Ø´ðµÀ£º“Ŷ£¬Óа¡¡£ÎÒÃǹ«Ë¾Ð¿ªÁËÒ»¸öPythonÅàѵ°à£¬ÎÒ¸øÄãÃÇ¿´Ò»Ï½éÉÜ¡£”˵×Å£¬Ð¡½ã½«²ÄÁϽ»¸øÁ½ÈË¡£
“Google  BitTorrent  Nokia”С°×¶Á×ÅÒ»¸ö¸ö¶úÊìµÄÃû×Ö£¬ÑÛ¾¦ÕöµÃ´ó´óµÄ¡£
“¼òµ¥µÄÓïÑÔ£¬Óï·¨±í´ïÓÅÃÀÒ׶Á”£¬Ð¡²ËÄî×ÅÕâЩ£¬Ëƺõ·Â·ðÕÒµ½ÁËÖª¼º¡£
 
ÕâÑù£¬°×²Ë¶þÈË×éÀ´µ½ÁËPythonµÄ¿ÎÌá£
 
ÊڿεÄÀÏʦÃû½Ð´óÅ££¬ÓµÓÐ5ÄêµÄPython±à³Ì¾­Ñ飬ͬʱ¾«Í¨C/C++ºÍÍøÂç±à³Ì¡£
Hello World£¡
ÈÃÎÒÃÇ¿´¿´PythonÈçºÎʵÏÖµÚÒ»¸öÀý³Ì¡£
´Ó“¿ªÊ¼”->& ......

Python µ÷ÓÃCAPICOM ¶ÁÈ¡ USB KEYÊý×ÖÖ¤Êé

import win32com.client
store = win32com.client.Dispatch('CAPICOM.Store')
# ´ò¿ªÖ¤Êé´æ´¢Çø
# 2 -> CAPICOM_CURRENT_USER_STORE
# 0 -> CAPICOM_STORE_OPEN_READ_ONLY
store.Open(2, "My", 0)
# ²éÕÒÓÐЧ֤Êé
# 12 -> CAPICOM_CERTIFICATE_FIND_KEY_USAGE
# 0x00000080 -> CAPICOM_DIGITAL_SIGNATURE_KEY_USAGE
# 9 -> CAPICOM_CERTIFICATE_FIND_TIME_VALID
# 6,6 -> CAPICOM_CERTIFICATE_FIND_EXTENDED_PROPERTY,CERT_KEY_SPEC_PROP_ID
stores = store.Certificates.Find(12,0x00000080).Find(9).Find(6,6)
stores = store.Certificates.Find(0,szThumbprint) # szThumbprint -> °´ËõÂÔͼ²éѯ
# 0 -> CAPICOM_CERTIFICATE_FIND_SHA1_HASH
# ÕÒµ½Ö¤Êé¼ÆÊý
stores.Count
# »ñÈ¡Ö¤ÊéÐÅÏ¢
for data in stores:
    data.GetInfo(0) # °ä·¢¸ø
    data.GetInfo(1) # °ä·¢Õß
    data.GetInfo(2) # Ö÷Ìâ(E) Email
    data.GetInfo(3) # ''
    data.GetInfo(4) # Ö÷ÒªÃû³Æ= RFC822 Name=
    data.GetInfo(5) ......
×ܼǼÊý:695; ×ÜÒ³Êý:116; ÿҳ6 Ìõ; Ê×Ò³ ÉÏÒ»Ò³ [19] [20] [21] [22] 23 [24] [25] [26] [27] [28]  ÏÂÒ»Ò³ βҳ
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØͼ | ¸ÓICP±¸09004571ºÅ