PythonµÄÄÚ´æÐ¹Â©¼°gcÄ£¿éµÄʹÓÃ
PythonµÄÄÚ´æÐ¹Â©¼°gcÄ£¿éµÄʹÓÃ
-- 6.11ÈÕ´íÎóÐÞÕý°æ
Horin|ºØÇÚ
Email: horin153@msn.com
Blog:
http://blog.csdn.net/horin153/
ÔÚ Python
ÖУ¬ÎªÁ˽â¾öÄÚ´æÐ¹Â©ÎÊÌ⣬²ÉÓÃÁ˶ÔÏóÒýÓüÆÊý£¬²¢»ùÓÚÒýÓüÆÊýʵÏÖ×Ô¶¯À¬»ø»ØÊÕ¡£
ÒòΪ Python
ÓÐÁË×Ô¶¯À¬»ø»ØÊÕ¹¦ÄÜ£¬²»ÉÙ³õѧÕß¾ÍÈÏΪ×Ô¼º´Ó´Ë¹ýÉÏÁ˺ÃÈÕ×Ó£¬²»±ØÔÙÊÜÄÚ´æÐ¹Â©µÄɧÈÅÁË¡£µ«Èç¹û²é¿´Ò»Ï Python Îĵµ¶Ô __del__()
º¯ÊýµÄÃèÊö£¬¾ÍÖªµÀºÃÈÕ×ÓÀïÒ²ÊÇÓÐÒõÔÆµÄ¡£ÏÂÃæÕª³Ò»µãÎĵµÄÚÈÝ£º
Some common situations that may
prevent the reference count of an object from going to zero include:
circular references between objects (e.g., a doubly-linked list or a
tree data structure with parent and child pointers); a reference to the
object on the stack frame of a function that caught an exception (the
traceback stored in sys.exc_traceback keeps the stack frame alive); or a
reference to the object on the stack frame that raised an unhandled
exception in interactive mode (the traceback stored in
sys.last_traceback keeps the stack frame alive).
¿É¼û£¬ÓÐ __del__()
º¯ÊýµÄ¶ÔÏó¼äµÄÑ»·ÒýÓÃÊǵ¼ÖÂÄÚ´æÐ¹Â©µÄÖ÷Ðס£Ìرð˵Ã÷£º¶ÔûÓÐ __del__() º¯ÊýµÄ Python
¶ÔÏó¼äµÄÑ»·ÒýÓã¬ÊÇ¿ÉÒÔ±»×Ô¶¯À¬»ø»ØÊÕµôµÄ¡£
ÈçºÎÖªµÀÒ»¸ö¶ÔÏóÊÇ·ñÄÚ´æÐ¹Â©ÁËÄØ£¿
·½·¨Ò»¡¢µ±ÄãÈÏΪһ¸ö¶ÔÏóÓ¦¸Ã±»Ïú»Ùʱ£¨¼´ÒýÓüÆÊýΪ 0£©£¬¿ÉÒÔͨ¹ý sys.getrefcount(obj)
À´»ñÈ¡¶ÔÏóµÄÒýÓüÆÊý£¬²¢¸ù¾Ý·µ»ØÖµÊÇ·ñΪ 0 À´ÅжÏÊÇ·ñÄÚ´æÐ¹Â©¡£Èç¹û·µ»ØµÄÒýÓüÆÊý²»Îª 0£¬ËµÃ÷Ôڴ˿̶ÔÏó obj
ÊDz»Äܱ»À¬»ø»ØÊÕÆ÷»ØÊÕµôµÄ¡£
·½·¨¶þ¡¢Ò²¿ÉÒÔͨ¹ý Python À©Õ¹Ä£¿é gc À´²é¿´²»ÄÜ»ØÊյĶÔÏóµÄÏêϸÐÅÏ¢¡£
Ê×ÏÈ£¬À´¿´Ò»¶ÎÕý³£µÄ²âÊÔ´úÂ룺
#--------------- code begin --------------
#
-*- coding: utf-8 -
Ïà¹ØÎĵµ£º
▾ hide table of contents
0. ¡ü ÏÔʾÍêÕûĿ¼
1. ÉîÈë#
2. ²¼¶ûÀàÐÍ#
3. ÊýÖµÀàÐÍ#
1. ½«ÕûÊýÇ¿ÖÆ×ª»»Îª¸¡µãÊý¼°·´Ïòת»»#
2. ³£¼ûÊýÖµÔËËã#
3. ·ÖÊý#
4. Èý½Çº¯Êý#
5. ²¼¶ûÉÏÏÂÎÄ»·¾³ÖеÄÊýÖµ#
4. Áбí#
1. ´´½¨Áбí#
......
ÏÂÃæÁгöPythonÕýÔò±í´ïʽµÄ¼¸ÖÖÆ¥ÅäÓ÷¨£º
1.²âÊÔÕýÔò±í´ïʽÊÇ·ñÆ¥Åä×Ö·û´®µÄÈ«²¿»ò²¿·Ö
regex=ur"" #ÕýÔò±í´ïʽ
if re.search(regex, subject):
do_something()
else:
do_anotherthing()
2.²âÊÔÕýÔò±í´ïʽÊÇ·ñÆ¥ÅäÕû¸ö×Ö·û´®
regex=ur"\Z" #ÕýÔò±í´ïʽĩβÒÔ\ ......
Ò»¡¢Ê¹ÓÃPythonÐèÒªÖªµÀµÄ
ÔÚ Windows ÉÏ£¬°²×° Python ÓÐÁ½ÖÖÑ¡Ôñ¡£
1¡¢ActiveState ÖÆ×÷µÄ ActivePython ÊÇרÃÅÕë¶Ô Windows µÄ Python Ì×¼þ£¬Ëü°üº¬ÁËÒ»¸öÍêÕûµÄ Python ·¢²¼¡¢Ò»¸öÊÊÓÃÓÚPython ±à³ÌµÄ IDE ÒÔ¼°Ò»Ð© PythonµÄ Windows À©Õ¹£¬ÌṩÁËÈ«²¿µÄ·ÃÎÊ Windows APIs µÄ·þÎñ£¬ÒÔ¼° Windows×¢²á±íµÄ×¢²áÐÅÏ¢¡£ËäÈ ......
Programming Python, 2nd Edition (O'Reilly)
http://www.osbbs.com/dl/Programming Python, 2nd Edition (O'Reilly).chm
ºÜÈ«ºÜ¾µäÁËpythonѧϰÈëÃÅ×ÊÁÏ
OReilly - Learning Python:
http://www.osbbs.com/dl/OReilly - Learning Python.chm
......
python stringºÍPyQtµÄQStringµÄÇø±ð ÒÔÏÂÔÚPython2.6ºÍPyQt4.4.4 for
Python2,6»·¾³ÏÂÌÖÂÛ£º PythonÖÐÓÐÁ½ÖÖÓйØ×Ö·ûµÄÀàÐÍ£ºPython string objectºÍPython Unicode
object¡£Ö÷ҪʹÓÃPython string object½øÐÐÊý¾ÝÊäÈëÊä³ö¡£ PyQtÖÐÓëÖ®Ïà¶ÔÓ¦µÄ×Ö·ûÓйØÀà
python stringºÍPyQtµÄQStringµÄÇø±ð
ÒÔÏÂÔÚPython2.6ºÍPyQt4 ......