Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

pythonʹÓÃSocketServers


pythonʹÓÃSocketServers
SocketServersÄ£¿éΪһ×ésocket·þÎñÀඨÒåÁËÒ»¸ö»ùÀ࣬Õâ×éÀàѹËõºÍÒþ²ØÁ˼àÌý¡¢½ÓÊܺʹ¦Àí½øÈëµÄsocketÁ¬½ÓµÄϸ½Ú¡£
1¡¢SocketServers¼Ò×å
TCPServerºÍUDPServer¶¼ÊÇSocketServerµÄ×ÓÀ࣬ËüÃÇ·Ö±ð´¦ÀíTCPºÍUDPÐÅÏ¢¡£
×¢Ò⣺SocketServerÒ²ÌṩUnixStreamServer(TCPServerµÄ×ÓÀà)ºÍUNIXdatagramServer(UDPServerµÄ×ÓÀà)£¬ËüÃǶ¼ÈçͬÆä¸¸ÀàÒ»Ñù³ýÁËÔÚ´´½¨¼àÌýsocketʱʹÓÃAF_UNIX´úÌæÁËAF_INET¡£
ĬÈÏÇé¿öÏ£¬socket·þÎñÒ»´Î´¦ÀíÒ»¸öÁ¬½Ó£¬µ«ÊÇÄã¿ÉÒÔʹÓÃThreadingMixINºÍForkingMixInÀàÀ´´´½¨ÈÎÒ»SocketServerµÄÏ̺߳Í×Ó½ø³Ì¡£Êµ¼ÊÉÏ£¬SocketServerÄ£¿éÌṩÁËһЩ¶ÔЩÓÐÓõÄÀàÀ´½â¾öÄãµÄÂé·³£¬ËüÃÇÊÇ£ºForkingUDPServer¡¢ForkingTCPServer¡¢ThreadingUDPServer¡¢ThreadingTCPServer¡¢ThreadingUnixStreamServerºÍThreadingUnixDatagramServer¡£
SocketServerÒÔͨ³£µÄ·½·¨´¦Àí½øÈëµÄÁ¬½Ó£»ÒªÊ¹Ëü¸üÓÐÓã¬ÄãÓ¦¸ÃÌṩÄã×Ô¼ºµÄÇëÇó´¦ÀíÆ÷Àà¸øËüÒÔ±ãËü´«µÝÒ»¸ösocketÈ¥´¦Àí¡£SocketServerÄ£¿éÖеÄBaseRequestHandlerÀàÊÇËùÓÐÇëÇó´¦ÀíÆ÷µÄ¸¸Àà¡£¼ÙÉ裬ÀýÈçÄãÐèҪдһ¸ö¶àÏ̵߳ĵç×ÓÓʼþ·þÎñÆ÷£¬Ê×ÏÈÄãÒª´´½¨Ò»¸öMailRequestHandler£¬ËüÊÇBaseRequestHandlerµÄ×ÓÀ࣬Ȼºó°ÑËü´«µÝ¸øÒ»¸öд´½¨µÄSocketServer:
import SocketServer
...#´´½¨ÄãµÄMailRequestHandler
addr=('220.172.20.6',25) #¼àÌýµÄµØÖ·ºÍ¶Ë¿Ú
server=SocketServer.ThreadingTCPServer(addr,MailRequestHandler)
server.serve_forever()
ÿ´ÎÒ»¸öеÄÁ¬½Óµ½À´Ê±£¬Õâ¸öserver´´½¨Ò»¸öеÄMailRequestHandlerʵÀý²¢µ÷ÓÃËüµÄhandle()·½·¨À´´¦ÀíÕâ¸öеÄÇëÇó¡£ÒòΪserver¼Ì³Ð×ÔThreadingTCPServer£¬¶ÔÓÚÿ¸öеÄÇëÇóËü¶¼Æô¶¯Ò»¸öµ¥¶ÀµÄÏß³ÌÀ´´¦ÀíÕâ¸öÇëÇó£¬ÒÔ±ãÓÚ¶à¸öÇëÇóÄܹ»±»Í¬Ê±´¦Àí¡£Èç¹ûÓÃhandle_request()´úÌæserver_forever£¬Ëü½«Ò»¸öÒ»¸öµÄ´¦ÀíÁ¬½ÓÇëÇó¡£server_forever Ö»ÊÇ·´¸´µ÷ÓÃhandle_request¶øÒÑ¡£
Ò»°ãÀ´Ëµ£¬ÄãÖ»ÐèʹÓÃsocket·þÎñÖ®Ò»£¬µ«ÊÇÈç¹ûÄãÐèÒª´´½¨Äã×Ô¼ºµÄ×ÓÀàµÄ»°£¬Äã¿ÉÒÔ¸²¸ÇÎÒÃÇÏÂÃæÌáµ½µÄ·½·¨À´¶¨ÖÆËü¡£
µ±·þÎñ±»µÚÒ»´Î´´½¨µÄʱºò£¬__init__º¯Êýµ÷ÓÃserver_bind()·½·¨À´°ó¶¨¼àÌýsocket(self.socket)µ½ÕýÈ·µÄµØÖ·(self.server_address)¡£È»ºóµ÷ÓÃserver_activate()À´¼¤»îÕâ¸ö·þÎñ(ĬÈÏÇé¿öÏ£¬µ÷ÓÃsocketµÄlisten·½·¨)¡£
Õâ¸ösocket·þÎñ²»×öÈκÎÊÂÇéÖ±µ½µ÷ÓÃÁËhandle_request»òserve_forever·½·¨¡£handle_requestµ÷ÓÃget_r


Ïà¹ØÎĵµ£º

PythonÖеÄFunction

     PythonÖУ¬º¯ÊýÊǿɱ»ÖØÓõijÌÐò¶Î¡£¶ÔÓÚº¯ÊýµÄ¶¨Ò壬¿ÉÒÔʹÓÃdef¹Ø¼ü×Ö¡£ÏÂÃæ¾ÍÏȶ¨ÒåÒ»¸öº¯Êý£º
      def foo():
print('function')
foo()
     ÔÚÉÏÊö´úÂëÖУ¬¶¨ÒåÁËÒ»¸öÃûΪfooµÄº¯Êý£¬Õâ¸öº¯ÊýûÓвÎÊý¡£×îºóÒ»ÐдúÂëµÄ¹¦ÄÜÊǵ ......

PythonÖÐÓÐȤµÄ±äÁ¿¸³Öµ

PythonÓïÑÔÖУ¬Á¬±äÁ¿ºÍËüµÄ¸³Öµ¶¼ÊǺÜÓÐÒâ˼µÄÊÂÇé¡£
ÄãÖ»ÐèÒªÔÚʹÓÃËüµÄʱºòÈÓ¸øËüÒ»¸öÖµ£¬È»ºóÔÚËüµÄ×÷ÓÃÓòÄÚʹÓÃËü¡£ÆäËûµÄÊÂÇé²»ÐèÒªµ£ÐÄ¡£python½âÊÍÆ÷»áÍê³ÉʣϵÄÊÂÇé¡£
1. >>>x = 1
2. >>>x
3. 1
4. >>>
µ±È»Ä㻹¿ÉÒÔÏÔʽµÄɾ³ýËü£¬µ«ÔÚÕâÖ®ºóÄã¾Í²»ÄÜÔÙÒýÓÃÕ⸠......

python×Ô¶¯²¹È«ÒÔ¼°×Ô´ø½Å±¾ÔËÐÐʧ°Ü½â¾ö·½·¨

pythonµÄ×Ô¶¯²¹È«Óкܶ෽·¨£¬±¾ÖÊÉ϶¼ÊÇÓÃ×ֵ䡣Éú³É×Öµä×î³£Óõĵ±È»ÊÇctagÁË£¬µ«ÊÇÿ´ÎÔö¼ÓÄ£¿é¶¼ÒªctagÒ»´ÎҲͦÂé·³µÄ¡£
ÄÜ͵ÀÁµÄÊǺó͵ÀÁÊÇÒ»ÖÖÃÀµÂ£¬ÓÐÈËÒѾ­×öÁË×ÖµäºÍÔö¼ÓÄ£¿éµÄ½Å±¾£¬ÎÒÃǸÉÂï²»×øÏíÆä³ÉÄØ¡£
http://vim.sourceforge.net/scripts/script.php?script_id=850
Õâ¸öÃûΪpydictionµÄÏîÄ¿°üÀ¨ÁËÒ»¸ö×Ö ......

python ¶à¼Ì³Ð(2)

from:  http://www.chinesepython.org/pythonfoundry/tut2.3/tmp/multiple.html
9.5.1 ¶à¼Ì³Ð Multiple Inheritance
Python supports a limited form of multiple inheritance as well. A class definition with multiple base classes looks as follows:
PythonͬÑùÓÐÏÞµÄÖ§³Ö¶à¼Ì³ÐÐÎʽ¡£¶à¼Ì³ÐµÄÀඨÒåÐÎÈçÏÂÀ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ