PythonÏ̱߳à³Ì£¨Èý£©Í¬²½¶ÓÁÐ
ÎÒÃǾ³£»á²ÉÓÃÉú²úÕß/Ïû·ÑÕß¹ØÏµµÄÁ½¸öÏß³ÌÀ´´¦ÀíÒ»¸ö¹²Ïí»º³åÇøµÄÊý¾Ý¡£ÀýÈçÒ»¸öÉú²úÕßÏ߳̽ÓÊÜÓû§Êý¾Ý·ÅÈëÒ»¸ö¹²Ïí»º³åÇøÀµÈ´ýÒ»¸öÏû·ÑÕßÏ̶߳ÔÊý¾ÝÈ¡³ö´¦Àí¡£µ«ÊÇÈç¹û»º³åÇøµÄ̫С¶øÉú²úÕߺÍÏû·ÑÕßÁ½¸öÒì²½Ï̵߳ÄËٶȲ»Í¬Ê±£¬ÈÝÒ׳öÏÖÒ»¸öÏ̵߳ȴýÁíÒ»¸öÇé¿ö¡£ÎªÁ˾¡¿ÉÄܵÄËõ¶Ì¹²Ïí×ÊÔ´²¢ÒÔÏàͬËٶȹ¤×÷µÄ¸÷Ï̵߳ĵȴýʱ¼ä£¬ÎÒÃÇ¿ÉÒÔʹÓÃÒ»¸ö“¶ÓÁДÀ´Ìṩ¶îÍâµÄ»º³åÇø¡£
´´½¨Ò»¸ö“¶ÓÁД¶ÔÏó
import Queue
myqueue = Queue.Queue(maxsize = 10)
Queue.QueueÀ༴ÊÇÒ»¸ö¶ÓÁеÄͬ²½ÊµÏÖ¡£¶ÓÁг¤¶È¿ÉΪÎÞÏÞ»òÕßÓÐÏÞ¡£¿Éͨ¹ýQueueµÄ¹¹Ô캯ÊýµÄ¿ÉÑ¡²ÎÊýmaxsizeÀ´É趨¶ÓÁг¤¶È¡£Èç¹ûmaxsizeСÓÚ1¾Í±íʾ¶ÓÁ㤶ÈÎÞÏÞ¡£
½«Ò»¸öÖµ·ÅÈë¶ÓÁÐÖÐ
myqueue.put(10)
µ÷ÓöÓÁжÔÏóµÄput()·½·¨ÔÚ¶Óβ²åÈëÒ»¸öÏîÄ¿¡£put()ÓÐÁ½¸ö²ÎÊý£¬µÚÒ»¸öitemΪ±ØÐèµÄ£¬Îª²åÈëÏîÄ¿µÄÖµ£»µÚ¶þ¸öblockΪ¿ÉÑ¡²ÎÊý£¬Ä¬ÈÏΪ1¡£Èç¹û¶ÓÁе±Ç°Îª¿ÕÇÒblockΪ1£¬put()·½·¨¾Íʹµ÷ÓÃÏß³ÌÔÝÍ£,Ö±µ½¿Õ³öÒ»¸öÊý¾Ýµ¥Ôª¡£Èç¹ûblockΪ0£¬put·½·¨½«Òý·¢FullÒì³£¡£
½«Ò»¸öÖµ´Ó¶ÓÁÐÖÐÈ¡³ö
myqueue.get()
µ÷ÓöÓÁжÔÏóµÄget()·½·¨´Ó¶Óͷɾ³ý²¢·µ»ØÒ»¸öÏîÄ¿¡£¿ÉÑ¡²ÎÊýΪblock£¬Ä¬ÈÏΪ1¡£Èç¹û¶ÓÁÐΪ¿ÕÇÒblockΪ1£¬get()¾Íʹµ÷ÓÃÏß³ÌÔÝÍ££¬Ö±ÖÁÓÐÏîÄ¿¿ÉÓá£Èç¹ûblockΪ0£¬¶ÓÁн«Òý·¢EmptyÒì³£¡£
ÎÒÃÇÓÃÒ»¸öÀý×ÓÀ´Õ¹Ê¾ÈçºÎʹÓÃQueue
# queue_example.py
from Queue import Queue
import threading
import random
import time
# Producer thread
class Producer(threading.Thread):
def __init__(self, threadname, queue):
threading.Thread.__init__(self, name = threadname)
self.sharedata = queue
def run(self):
for i in range(20):
print self.getName(),'adding',i,'to queue'
self.sharedata.put(i)
time.sleep(random.randrange(10)/10.0)
print self.getName(),'Finished'
# Consumer thread
class Consumer(threading.Thread):
def __init__(self, threadname, queue):
threading.Thread.__init__(self, name = threadname)
self.sharedata = queue
def run(self):
for i in range(20):
print self.getName(),'got a value:',self.sharedata.get()
time.sleep(random.randrange(10)/10.0)
print self.getName(),'Finished'
# Main thread
def main():
queue = Queue()
producer = Producer('Producer', queue)
consumer =
Ïà¹ØÎĵµ£º
"""A parser for HTML and XHTML."""
# This file is based on sgmllib.py, but the API is slightly different.
# XXX There should be a way to distinguish between PCDATA (parsed
# character data -- the normal case), RCDATA (replaceable character
# data -- only char and entity references and end tags a ......
from http://blog.alexa-pro.cn/?p=315
´ËÎĵµÊ¹ÓÃÆ½Ì¨Îª cPAMIE Build 2.0,ºÍ֮ǰµÄ°æ±¾ÓÐÃ÷ÏԵIJî±ð,¾ßÌå¿ÉÖ±½Ó¿´cPAMIE.py Ô´Âë
ÏÂÃæÊÇһЩ³£Óõķ½·¨
ie.navigate('http://blog.alexa.cn') ÓÃÀ´·ÃÎÊÒ»¸öÁ´½Ó¡£
ie.linkClick('linkname') ´ò¿ªÕâ¸öÒ³ÃæÖеÄÒ»¸öÁ¬½Ó ²ÎÊý: name»ò id
ie.textBoxSet('labels','python ......
from http://blog.alexa-pro.cn/?p=349
ÄÚÈݸÅÒª:Python´úÂë¼ÓÃÜ,Ô´Âë±£»¤,´úÂë±£»¤,pycÎļþ
------------------------------------------------
¹ØÓÚpython´úÂë±£»¤ÔÚÍøÉϺÃÏñһֱûÓкܺõĽéÉÜ,¿ÉÄܺÍPYTHONµÄÉè¼Æ³õÖÔ"¿ªÔ´"ÓйØ,µ«Ô½À´Ô½¶àµÄÐÖµÜдµÄ¼ÓÈëPYTHONÕóÓª,¿ª·¢¹¤¾ßÓÃ;¸÷Òì,ÔÚÉÌÒµÓ¦ÓÃÖдúÂë± ......
ÏÂÃæ¶ÔPython½ø³Ì½øÐÐÉîÈë¶ø×ÐϸµÄѧϰ£¬Ê×ÏÈÏÈÈôó¼ÒÁ˽âÏÂʲôÊÇPython½ø³Ì£¬ÒÔ¼°ÔÚ¶ÔPython½ø³Ì½øÐд¦ÀíʱעÒâµÄÏà¹ØÎÊÌ⣬½ÓÏÂÀ´£¬¾ÍÓÉÎÒ¸ø´ó¼Ò½øÐнéÉÜѧϰ£¬½ö¹©´ó¼Òѧϰ¡£
²»¹ý£¬ËäÈ»½ø³Ì¿ÉÔÚµ¥¶ÀµÄÄÚ´æ¿Õ¼äÖÐÖ´ÐУ¬µ«³ý·ÇÕâЩPython½ø³ÌÔÚµ¥¶ÀµÄ´¦ÀíÆ÷ÉÏÖ´ÐУ¬·ñÔò£¬Êµ¼Ê²¢²»ÊǓͬʱ”ÔËÐеġ£ÊÇÓɲÙ×÷ ......
ÔÚ»ùÓÚ»¥ÁªÍøµÄÓ¦ÓÃÖУ¬³ÌÐò¾³£ÐèÒª×Ô¶¯µØ·¢Ë͵ç×ÓÓʼþ¡£È磺һ¸öÍøÕ¾µÄ×¢²áϵͳ»áÔÚÓû§×¢²áʱ·¢ËÍÒ»·âÓʼþÀ´È·ÈÏ×¢²á£»µ±Óû§Íü¼ÇµÇ½ÃÜÂëµÄʱºò£¬Í¨¹ýÓʼþÀ´È¡»ØÃÜÂë¡£smtplibÄ£¿éÊÇpythonÖÐsmtp(¼òµ¥Óʼþ´«ÊäÐÒé)µÄ¿Í»§¶ËʵÏÖ¡£ÎÒÃÇ¿ÉÒÔʹÓÃsmtplibÄ£¿é£¬ÇáËɵķ¢Ë͵ç×ÓÓʼþ¡£ÏÂÃæµÄÀý×ÓÓÃÁ˲»µ½Ê®ÐдúÂëÀ´·¢Ë͵ç×ÓÓÊ ......