ÒÔPython Imaging Library ½øÐÐÓ°Ïñ×ÊÁÏ´¦ÀíPIL
1 Ó°ÏñÓëͼÐÎ×ÊÁϵĴ¦Àí
ÌÖÂÛͼÐÎ(Ó°Ïñ) ±¾ÉíµÄ´¦Àí£¬¶øÌÖÂÛµÄÄÚÈݽ«»á¼¯ÖÐÔÚPython Imaging Library (PIL) ÕâÒ»Ì׳Ìʽ¿âÉÏ¡£
PIL ÊÇPython ÏÂ×îÓÐÃûµÄÓ°Ïñ´¦ÀíÌ×¼þ£¬ÓÉÐí¶à²»Í¬µÄÄ£×éËù×é³É£¬²¢ÇÒÌṩÁËÐí¶àµÄ´¦Àí¹¦ÄÜ£¬ÔÊÐíÎÒÃÇÔÚ¼òµ¥µÄPython ³ÌʽÀï½øÐÐÓ°ÏñµÄ´¦Àí¡£ ʹÓÃÏñPIL ÐíÑùµÄ³Ìʽ¿âÌ×¼þ¿ÉÒÔ°ïÖúÎÒÃǰѾ«Á¦¼¯ÖÐÔÚÓ°Ïñ´¦ÀíµÄ¹¤×÷±¾Éí£¬±ÜÃâÃÔʧÔڵײãµÄÑÝËã·¨ÀïÃæ¡£
ÓÉÓÚÓ°Ïñ´¦ÀíÇ£Éæµ½ÁË´óÁ¿µÄÊýѧÔËË㣬Òò´ËPIL ÖÐÓÐÐí¶àµÄÄ£×éÊÇÓÃC ÓïÑÔËùд³ÉµÄ£¬ÒÔÌáÉý´¦ÀíµÄЧÂÊ¡£ ²»¹ý£¬ÔÚʹÓõÄʱºò£¬ÎÒÃǵ±È»²»±ØÔÚÒâÕâÑùµÄÎÊÌ⣬ֻ¹Ü·ÅÐĵØÓþÍÊÇÁË¡£
1.1 PIL ÄÜΪÄã×÷µÄÊÂ
PIL ¾ß±¸(µ«²»ÏÞÓÚ) ÒÔϵÄÄÜÁ¦£º
ÊýÊ®ÖÖͼµµ¸ñʽµÄ¶ÁдÄÜÁ¦¡£ ³£¼ûµÄJPEG, PNG, BMP, GIF, TIFF µÈ¸ñʽ£¬¶¼ÔÚPIL µÄÖ§Ô®Ö®ÁС£ ÁíÍ⣬PIL Ò²Ö§Ô®ºÚ°×¡¢»Ò½×¡¢×Ô¶©µ÷É«ÅÌ¡¢RGB true color¡¢´øÓÐ͸Ã÷ÊôÐÔµÄRBG true color¡¢CMYK ¼°ÆäËüÊýÖÖµÄÓ°Ïñģʽ¡£Ï൱ÆëÈ«¡£
»ù±¾µÄÓ°Ïñ×ÊÁϲÙ×÷£º²ÃÇС¢Æ½ÒÆ¡¢Ðýת¡¢¸Ä±ä³ß´ç¡¢µ÷ÖÃ(transpose)¡¢¼ôÏÂÓëÌùÉϵȵȡ£
Ç¿»¯Í¼ÐΣºÁÁ¶È¡¢É«µ÷¡¢¶Ô±È¡¢ÈñÀû¶È¡£
É«²Ê´¦Àí¡£
PIL ÌṩʮÊýÖÖÂ˾µ(filter)¡£ µ±È»£¬Õâ¸öÊýĿԶԶ²»ÄÜÓëPhotoshop® »òGIMP® ÕâÑùµÄ×¨ÒµÌØÐ§´¦ÀíÈíÌåÏà±È£»µ«PIL ÌṩµÄÕâЩÂ˾µ¿ÉÒÔÓÃÔÚPython ³ÌʽÀïÃæ£¬ÌṩÅú´Î»¯´¦ÀíµÄÄÜÁ¦¡£
PIL ¿ÉÒÔÔÚÓ°ÏñÖлæÍ¼ÖƵ㡢Ïß¡¢Ãæ¡¢¼¸ºÎÐÎ×´¡¢ÌîÂú¡¢ÎÄ×ֵȵȡ£
½ÓÏÂÀ´£¬ÎÒÃÇ¿ªÊ¼Ò»²½Ò»²½µØ¶ÔPython/PIL µÄÓ°Ïñ´¦Àí³ÌʽÉè¼Æ½øÐÐÌÖÂÛ¡£
2 ת»»Í¼µµ¸ñʽ
ÊÐÃæÉÏÓÐÐí¶àÓ°Ïñ´¦Àí³Ìʽ£¬Ò»°ãÈË×î³£ÓÃËüÃÇÀ´´¦ÀíµÄ¹¤×÷´ó¸Å¾ÍÊÇͼµµ¸ñʽת»»ÁË£»ÕâÊÇÓ°Ïñ´¦ÀíÈíÌå×î»ù±¾µÄ¹¦ÄÜ£¬PIL µ±È»Ò²ÒªÖ§Ô®¡£
¼ÙÉèÎÒÃÇÓÐÒ»¸öJPGµµ°¸£¬Ãû×Ö½Ð×÷ sample01.jpg£¬ÄÇô£¬ÒÔϵijÌʽ»á°ÑÕâ¸öµµ°¸ÔØÈëPython£º
“”>“µ¼ÈëͼÏñ”>“”£¨ÔÚ= Image.open“sample01.jpg”£©
im Õâ¸öÎï¼þÊÇÓÉ Image.open() ·½·¨Ëù²úÉú³öÀ´µÄ Image Îï¼þ¡£ ÎÒÃÇ¿ÉÒÔÓà Image Îï¼þÄÚµÄÊôÐÔÀ´²éѯ¹ØÓڴ˵µ°¸µÄ×ÊѶ£º
“”>“´òÓ¡im.format£¬im.size£¬im.modeµÄJPEG£¨2288£¬1712£©µÄRGB
¸ñʽ×Ö´®·ÅÔÚ format ÊôÐÔÀ³ß´ç·ÅÔÚ size ÊôÐÔÀ¶ø(µ÷É«ÅÌ)ģʽ·ÅÔÚ mode ÊôÐÔÀï¡£&nb
Ïà¹ØÎĵµ£º
ÕýÔò±í´ïʽÊÇËÑË÷¡¢Ìæ»»ºÍ½âÎö¸´ÔÓ×Ö·ûģʽµÄÒ»ÖÖÇ¿´ó¶ø±ê×¼µÄ·½·¨.
ÕýÔò±í´ïʽ£¨»ò RE£©ÊÇÒ»ÖÖСÐ͵ġ¢¸ß¶Èרҵ»¯µÄ±à³ÌÓïÑÔ£¬£¨ÔÚPythonÖУ©ËüÄÚǶÔÚPythonÖУ¬²¢Í¨¹ý re Ä£¿éʵÏÖ.×Ö·û´®Ò²Óкܶ෽·¨,¿ÉÒÔ½øÐÐËÑË÷ (index¡¢find ºÍ count)¡¢Ìæ»» (replace) ºÍ½â
Îö (split),µ«ËüÃǽöÏÞÓÚ´¦Àí×î¼òµ¥µÄÇé¿ö
re Ä£¿éʹ P ......
1. What’s the difference between all of the os.popen() methods?
popen2 doesn't capture standard error, popen3 does capture standard
error and gives a unique file handle for it. Finally, popen4 captures
standard error but includes it in the same file object as standard
output.
os.popen()&n ......
Python ×Öµä
×ÖµäÀàËÆÓÚÄãͨ¹ýÁªÏµÈËÃû×Ö²éÕÒµØÖ·ºÍÁªÏµÈËÏêϸÇé¿öµÄµØÖ·²¾£¬¼´£¬ÎÒÃǰѼü£¨Ãû×Ö£©ºÍÖµ£¨ÏêϸÇé¿ö£©ÁªÏµÔÚÒ»Æð¡£×¢Ò⣬¼ü±ØÐëÊÇΨһµÄ£¬¾ÍÏñÈç¹ûÓÐÁ½¸öÈËÇ¡ÇÉͬÃûµÄ»°£¬ÄãÎÞ·¨ÕÒµ½ÕýÈ·µÄÐÅÏ¢¡£
×¢Ò⣬ÄãÖ»ÄÜʹÓò»¿É±äµÄ¶ÔÏ󣨱ÈÈç×Ö·û´®£©À´×÷Ϊ×ÖµäµÄ¼ü£¬µ«ÊÇÄã¿ÉÒÔ²»¿É±ä»ò¿É±äµÄ¶ÔÏó×÷Ϊ×Öµäµ ......
µÚÒ»²½£º´î½¨ÊÖ»úÔËÐÐÆ½Ì¨
ÒªÔÚS60ÊÖ»úÉÏÔËÐÐPY¿ª·¢µÄÈí¼þ,Ê×ÏȾÍÒª´î½¨ÊÖ»úPYÔËÐл·¾³.ŵ»ùÑÇÊÖ»ú±¾Éí²»Ö§³ÖPython,ËùÒÔÒª°²×°Python²å¼þ.
PS£ºÒ»¶¨Òª°²×°ÔÚCÅÌ£¡ÎÒÒ»¿ªÊ¼×°E£¬½á¹û³öÏÖÁ˺ÜÑÏÖØµÄÎÊÌ⣡²»¹ý,×î½üÍøÉÏ·¢ÏÖÓÐEÅ̰æµÄÀ²,Äã¿ÉÒÔ×Ô¼ºÊÔÑéһϣ¬¹þ¹þ
PythonScriptShell_1_4_5_3rdEd.SIS
Pyth ......
ÕâÁ½¸ö»ù±¾É϶¼ÊÇÔÚÑ»·µÄʱºòÓá£
Python
´úÂë < type="application/x-shockwave-flash" width="14" height="15" src="http://cloudhe.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" src="http://cloudhe.javaeye.com/javascripts/syntaxhighlighter/clipboard_new.swf" flashvars="clipboard=for%20i% ......