Python±ê×¼¿âµÄthreading.ThreadÀà
Õâ¸öÀà±íʾÔÚµ¥¶ÀµÄ¿ØÖÆÏß³ÌÖÐÔËÐеĻ¡£ÓÐÁ½ÖÖ·½·¨¿ÉÒÔÖ¸¶¨ÕâÖֻ£¬¸ø¹¹Ô캯Êý´«µÝ»Øµ÷¶ÔÏ󣬻òÕßÔÚ×ÓÀàÖÐÖØÐ´run() ·½·¨¡£ÆäËû·½·¨£¨³ýÁ˹¹Ô캯Êý)¶¼²»Ó¦ÔÚ×ÓÀàÖб»ÖØÐ´¡£»»¾ä»°Ëµ£¬ÔÚ×ÓÀàÖÐÖ»ÓÐ__init__()ºÍrun()·½·¨±»ÖØÐ´¡£
Ò»µ©Ï̶߳ÔÏó±»´´½¨£¬ËüµÄ»î¶¯ÐèҪͨ¹ýµ÷ÓÃÏ̵߳Ästart()·½·¨À´Æô¶¯¡£Õâ·½·¨ÔÙµ÷ÓÿØÖÆÏß³ÌÖеÄrun·½·¨¡£
Ò»µ©Ï̱߳»¼¤»î£¬ÔòÕâÏ̱߳»ÈÏΪÊÇ'alive'(»î¶¯)¡£µ±ËüµÄrun()·½·¨ÖÕֹʱ-Õý³£Í˳ö»òÅ׳öδ´¦ÀíµÄÒì³££¬Ôò»î¶¯×´Ì¬Í£Ö¹¡£isAlive()·½·¨²âÊÔÏß³ÌÊÇ·ñÊǻµÄ¡£
Ò»¸öÏß³ÌÄܵ÷ÓñðµÄÏ̵߳Äjoin()·½·¨¡£Õ⽫×èÈûµ÷ÓÃỊ̈߳¬Ö±µ½ÓµÓÐjoin()·½·¨µÄÏ̵߳ĵ÷ÓÃÖÕÖ¹¡£
Ïß³ÌÓÐÃû×Ö¡£Ãû×ÖÄÜ´«¸ø¹¹Ô캯Êý£¬Í¨¹ýsetName()·½·¨ÉèÖã¬ÓÃgetName()·½·¨»ñÈ¡¡£
Ïß³ÌÄܱ»±êʶΪ'daemon thread'(ÊØ»¤Ïß³Ì).Õâ±êÖ¾µÄÌØµãÊǵ±Ê£ÏµÄÈ«ÊÇÊØ»¤Ïß³Ìʱ£¬ÔòPython³ÌÐòÍ˳ö¡£ËüµÄ³õʼֵ¼Ì³ÐÓÚ´´½¨Ï̡߳£Õâ±êÖ¾ÓÃsetDaemon()·½·¨ÉèÖã¬ÓÃisDaemon()»ñÈ¡¡£
´æÔÚ'main thread'(Ö÷Ïß³Ì),Ëü¶ÔÓ¦ÓÚPython³ÌÐòµÄ³õʼ¿ØÖÆÏ̡߳£Ëü²»ÊǺǫ́Ï̡߳£
ÓпÉÄÜ´æÔÚ'dummy thread objects'(ÑÆÏ̶߳ÔÏó)±»´´½¨¡£ÕâЩÏ̶߳ÔÓ¦ÓÚ'alien threads'(ÍⲿÏß³Ì),ËüÃÇÔÚPythonµÄÏß³ÌÄ£ÐÍÖ®Íâ±»Æô¶¯£¬ÏñÖ±½Ó´ÓCÓïÑÔ´úÂëÖÐÆô¶¯¡£ÑÆÏ̶߳ÔÏóÖ»ÓÐÓÐÏ޵ŦÄÜ£¬ËüÃÇ×ÜÊDZ»ÈÏΪÊǻµÄ£¬ÊØ»¤Ị̈߳¬²»ÄÜʹÓÃjoin()·½·¨¡£ËüÃÇ´Ó²»Äܱ»É¾³ý£¬¼ÈÈ»ËüÎÞ·¨¼à²âµ½ÍⲿÏ̵߳ÄÖÐÖ¹¡£
class Thread(group=None, target=None, name=None, args=(), kwargs={})
¹¹Ô캯ÊýÄÜ´øÓйؼü×Ö²ÎÊý±»µ÷Óá£ÕâЩ²ÎÊýÊÇ:
group Ó¦µ±Îª None£¬Îª½«À´ÊµÏÖThreadGroupÀàµÄÀ©Õ¹¶ø±£Áô¡£
target ÊDZ» run()·½·¨µ÷ÓõĻص÷¶ÔÏó. ĬÈÏӦΪNone, Òâζ×ÅûÓжÔÏó±»µ÷Óá£
name ΪÏß³ÌÃû×Ö¡£Ä¬ÈÏ£¬ÐÎʽΪ'Thread-N'µÄΨһµÄÃû×Ö±»´´½¨£¬ÆäÖÐN ÊDZȽÏСµÄÊ®½øÖÆÊý¡£
argsÊÇÄ¿±êµ÷ÓòÎÊýµÄtuple£¬Ä¬ÈÏΪ()¡£
kwargsÊÇÄ¿±êµ÷ÓõIJÎÊýµÄ¹Ø¼ü×Ödictionary£¬Ä¬ÈÏΪ{}¡£
Èç¹û×ÓÏß³ÌÖØÐ´Á˹¹Ô캯Êý£¬ËüÓ¦±£Ö¤µ÷ÓûùÀàµÄ¹¹Ô캯Êý(Thread.__init__())£¬ÔÚÏß³ÌÖнøÐÐÆäËû¹¤×÷֮ǰ¡£
start() Æô¶¯Ï̻߳¡£
ÔÚÿ¸öÏ̶߳ÔÏóÖÐ×î¶à±»µ÷ÓÃÒ»´Î¡£Ëü°²ÅŶÔÏóµÄrun() ±»µ÷ÓÃÔÚÒ»µ¥¶ÀµÄ¿ØÖÆÏß³ÌÖС£
run()
ÓÃÒÔ±íʾÏ̻߳µÄ·½·¨¡£
Äã¿ÉÄÜÔÚ×ÓÀàÖØÐ´Õâ·½·¨¡£±ê×¼µÄ run()·½·¨µ÷ÓÃ×÷Ϊtarget´«µÝ¸ø¶ÔÏó¹¹Ô캯ÊýµÄ»Øµ÷¶ÔÏó¡£Èç¹û´æÔÚ²ÎÊý£¬Ò»ÏµÁйؼü×Ö²ÎÊý´ÓargsºÍkwargs²ÎÊýÏàÓ¦µØÆð×÷Óá£
join([
Ïà¹ØÎĵµ£º
ÔÚLearning Python 3rd ÀïµÚÈý²¿·ÖÁ·Ï°ÌâÓеÀÌ⣺
1.c ±àдfor Ñ»·£¬¶ÔÓÚ×Ö·û´®S£¬·µ»ØÒ»¸öеÄÁÐ±í£¬ÆäÖаüº¬ÁË×Ö·û´®Ã¿¸ö×Ö·ûµÄASCIIÂë¡£
ÎÒµÄ˼·ÊÇ£º
for i in S:
L = [ord(i) for i in S] #Áбí½âÎöµÄ˼·
ÎҵĴíÎó˼·£º
for i in S:
L = L.append(ord(i))
Ìáʾ¿Õ¶ ......
ºÜ³¤µÄÒ»¶Î´úÂ룬µ«ºÜÇå³þ¡£¹þ¹þ¡£
import os
from time import strftime
stamp=strftime("%Y-%m-%d %H:%M:%S")
logfile = 'F:\\test\\m-php-framework\\tmp\logs\\error_report.log'
path = 'F:\\test\\'
files = os.listdir(path)
bytes = 0
numfiles = 0
for f in files:
if f.startswith('t'): ......
Python MySQLdb ²éѯ·µ»Ø×Öµä½á¹¹ smallfish
MySQLdbĬÈϲéѯ½á¹û¶¼ÊÇ·µ»Øtuple£¬Êä³öʱºò²»ÊǺܷ½±ã£¬±ØÐë°´ÕÕ0£¬1ÕâÑù¶ÁÈ¡£¬ÎÞÒâÖÐÔÚÍøÉÏÕÒµ½¼òµ¥µÄÐ޸ķ½·¨£¬¾ÍÊÇ´«µÝÒ»¸öcursors.DictCursor¾ÍÐС£
ĬÈϳÌÐò£º
import MySQLdb
db = MySQLdb.connect(host = 'localhost', user = 'root', passwd = '123456', d ......
[Ô´´]Python´úÂëÄ£¿éÈȸüлúÖÆÊµÏÖ(reload)
by AKara 2009-05-17 @ http://blog.csdn.net/akara @ akaras@163.com
---------------------------------------------------------------------
¶ÔÒ»¸öÓÎÏ·À´Ëµ£¬ÎÞÂÛÊÇclient»òserver¶¼·Ç³£ÐèÒªÒ»Ì×´úÂëÈȸüеĻúÖÆ¡£
ËüÄÜ´ó´óÌá¸ß¿ª·¢Ð§ÂÊ£¬ÓÖÄܳ¬ºõÍæ ......
osÄ£¿éÌṩÁ˶àÊý²Ù×÷ϵͳµÄ¹¦Äܽӿں¯Êý.µ±osÄ£¿é±»µ¼Èëºó,Ëü»á×ÔÊÊÓ¦ÓÚ²»Í¬µÄ²Ù×÷ϵͳƽ̨,Èçposix»òNTϵͳƽ̨,osÄ£¿é»á¸ù¾Ý²»Í¬µÄƽ̨½øÐÐÏàÓ¦µÄ²Ù×÷.±¾½ÚÄÚÈݽ«¶ÔosÄ£¿éÌṩµÄº¯Êý½øÐÐÏêϸµÄ½â¶Á.
1.1 Îļþ²Ù×÷º¯Êý
1.1.1 open()º¯ÊýÌṩ´´½¨¡¢´ò¿ª¡¢ÐÞ¸ÄÎļþµÄ¹¦ÄÜ¡£
Example 1-1. Using the os Module to Rename ......