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() -> stdout
os.popen2() -> (stdin, stdout)
os.popen3() -> (stdin, stdout, stderr)
os.popen4() -> (stdin, stdout_and_stderr)
2. os.popen() vs os.system()
from what I've deciphered, the only differences between os.popen() and os.system() are
a) popen automatically starts a new process while system only does it if you include an &
b) popen hooks onto stdout and stdin.
If so, what's the use of os.system()???
a) is not true. Under Unix both start a new process.
The important difference (as I understand it) is popen lets you interact with the program by reading and writing pipes while it's running. system() is more of a batch mode thing, the program runs to com ......
Ò»¡¢ÈçºÎÄÜÔÚÃüÁîÐÐģʽÏÂÔËÐÐPythonÃüÁ
ΪÁËÔÚÃüÁîÐÐģʽÏÂÔËÐÐPythonÃüÁÐèÒª½«python.exeËùÔÚµÄĿ¼¸½¼Óµ½PATHÕâ¸ö»·¾³±äÁ¿ÖС£
¶þ¡¢ÈçºÎʹPython½âÊÍÆ÷ÄÜÖ±½ÓimportĬÈÏ°²×°Â·¾¶ÒÔÍâµÄµÚÈý·½Ä£¿é£¿
ΪÁËÄÜimportĬÈÏ°²×°Â·¾¶ÒÔÍâµÄµÚÈý·½µÄÄ£¿é£¨Èç×Ô¼ºÐ´µÄÄ£¿é£©£¬ÐèҪн¨PYTHONPATH»·¾³±äÁ¿£¬»·¾³±äÁ¿µÄÖµÉèÖÃΪÕâ¸öÄ£¿éµÄ¸¸Ä¿Â¼¡£ ......
ptyhonºËÐıà³ÌµÚÈý°æµÄ×Ôѧ£¬Ö÷Ҫѧϰ±Ê¼Ç·¢Ï£º
µÚÒ»Õ£ºÊ¹ÓÃÈëÃÅ
ÈËÃÇΪʲôʹÓÃPYTHONÓïÑÔ£º
1¡¢Èí¼þÖÊÁ¿£»
2¡¢¿ª·¢ÕßЧÂÊ£»
3¡¢³ÌÐòµÄ¿ÉÒÆÖ²ÐÔ£»
4¡¢×é¼þ¼¯³É£»
5¡¢ÏíÊÜÀÖȤ£»
PYTHONÓïÑÔµÄȱµã£¬¾ÍÊÇËÙ¶ÈÂý¡£
ʹÓÃPYTHON¿ÉÒÔ×öЩʲô£º
1¡¢ÏµÍ³±à³Ì£»
2¡¢Óû§Í¼Ðνӿڣ»
3¡¢INTERNET½Å±¾£»
4¡¢×é¼þ¼¯³É£»
5¡¢Êý¾Ý¿â±à³Ì£»
6¡¢¿ìËÙÔÐÍ
7¡¢Êý¾ÝÖµ¼ÆËãºÍ¿Æѧ¼ÆËã±à³Ì£»
8¡¢ÓÎÏ·¡¢Í¼ÐΡ¢È˹¤ÖÇÄÜ¡¢XML¡¢»úÆ÷È˵ȡ£
PYTHONÔÚÄÄЩ¼¼ÊõÉϵÄÓÅÊÆ£º
1¡¢ÃæÏò¶ÔÏó£»
2¡¢Ãâ·Ñ£»
3¡¢¿ÉÒÆÖ²ÐÔ£»
4¡¢¹¦ÄÜÇ¿´ó£»
5¡¢¿É»ìºÏ±à³Ì£»
6¡¢Ê¹Óüòµ¥£»
7¡¢¼òµ¥Ò×ѧ£»
µÚ¶þÕ ÈçºÎÔËÐгÌÐò
PYTHONÆäʵÓëJAVAÒ»Ñù£¬ÊDzÉÈ¡±àÒë³É×Ö½ÚÂëºó£¬ÔÙ½øÐÐÔËÐУ¬ÔÚÔËÐÐËÙ¶ÈÉÏ´¦ÓÚCºÍJAVAÖ®¼ä£¬ÕýÒòΪÊÇʹÓÃ×Ö½ÚÂ룬ËùÒÔ¿ÉÒÆÖ²ÐÔ½ÏÇ¿¡£
PYTHONʵÏÖÔÚÌæ´úÕߣº
1¡¢CYTHONÊÇÔʼµÄ¡¢±ê×¼µÄÌæ´úÕß¡£
2¡¢JYTHONÆäÄ¿µÄÊÇΪÁËÓëJAVA±à³ÌÓïÑÔ¼¯³É¡£
3¡¢IRONPTYON£¬ËûµÄÉè¼ÆÄ¿µÄÊÇÈÃPYTHON³ÌÐò¿ÉÒÔÓëWINDOWSƽ̨ÉÏ¡£NET¿ò¼ÝÒÔ¼°ÓëÖ®¶ÔÓ¦µÄLINUXµÄ¿ªÔ´µÄMONO±àд³ÉÓ¦ÓÃÏ༯³É¡£
4¡¢Ö´ÐÐÓÅ»¯¹¤¾ß£¬PSYCOʵʱ±àÒëÆ÷£¬¿ÉÒÔÈóÌÐòÔËÐÐËٶȼӿ졣
µÚÈýÕ ÈçºÎÔËÐгÌÐò
1¡¢½»»¥Ê½Ä£Ê½Ï±à ......
Python Áбí
listÊÇ´¦ÀíÒ»×éÓÐÐòÏîÄ¿µÄÊý¾Ý½á¹¹£¬¼´Äã¿ÉÒÔÔÚÒ»¸öÁбíÖд洢һ¸ö ÐòÁÐ µÄÏîÄ¿¡£¼ÙÏëÄãÓÐÒ»¸ö¹ºÎïÁÐ±í£¬ÉÏÃæ¼ÇÔØ×ÅÄãÒªÂòµÄ¶«Î÷£¬Äã¾ÍÈÝÒ×Àí½âÁбíÁË¡£Ö»²»¹ýÔÚÄãµÄ¹ºÎï±íÉÏ£¬¿ÉÄÜÿÑù¶«Î÷¶¼¶À×ÔÕ¼ÓÐÒ»ÐУ¬¶øÔÚPythonÖУ¬ÄãÔÚÿ¸öÏîÄ¿Ö®¼äÓöººÅ·Ö¸î¡£
ÁбíÖеÄÏîÄ¿Ó¦¸Ã°üÀ¨ÔÚ·½À¨ºÅÖУ¬ÕâÑùPython¾ÍÖªµÀÄãÊÇÔÚÖ¸Ã÷Ò»¸öÁÐ±í¡£Ò»µ©Äã´´½¨ÁËÒ»¸öÁÐ±í£¬Äã¿ÉÒÔÌí¼Ó¡¢É¾³ý»òÊÇËÑË÷ÁбíÖеÄÏîÄ¿¡£ÓÉÓÚÄã¿ÉÒÔÔö¼Ó»òɾ³ýÏîÄ¿£¬ÎÒÃÇ˵ÁбíÊÇ ¿É±äµÄ Êý¾ÝÀàÐÍ£¬¼´ÕâÖÖÀàÐÍÊÇ¿ÉÒÔ±»¸Ä±äµÄ¡£
¶ÔÏóÓëÀàµÄ¿ìËÙÈëÃÅ
¾¡¹ÜÎÒÒ»Ö±ÍƳÙÌÖÂÛ¶ÔÏóºÍÀ࣬µ«ÊÇÏÖÔÚ¶ÔËüÃÇ×öÒ»µã½âÊÍ¿ÉÒÔʹÄã¸üºÃµÄÀí½âÁÐ±í¡£ÎÒÃÇ»áÔÚÏàÓ¦µÄÕ½ÚÏêϸ̽Ë÷Õâ¸öÖ÷Ìâ¡£
ÁбíÊÇʹÓöÔÏóºÍÀàµÄÒ»¸öÀý×Ó¡£µ±ÄãʹÓñäÁ¿i²¢¸øËü¸³ÖµµÄʱºò£¬±ÈÈ縳ÕûÊý5£¬Äã¿ÉÒÔÈÏΪÄã´´½¨ÁËÒ»¸öÀࣨÀàÐÍ£©intµÄ¶ÔÏó£¨ÊµÀý£©i¡£ÊÂʵÉÏ£¬Äã¿ÉÒÔ¿´Ò»ÏÂhelp(int)ÒÔ¸üºÃµØÀí½âÕâÒ»µã¡£
ÀàÒ²Óз½·¨£¬¼´½ö½öΪÀà¶ø¶¨ÒåµØº¯Êý¡£½ö½öÔÚÄãÓÐÒ»¸ö¸ÃÀàµÄ¶ÔÏóµÄʱºò£¬Äã²Å¿ÉÒÔʹÓÃÕâЩ¹¦ÄÜ¡£ÀýÈ磬PythonΪlistÀàÌṩÁËappend·½·¨£¬Õâ¸ö·½·¨ÈÃÄãÔÚÁбíβÌí¼ÓÒ»¸öÏîÄ¿¡£ÀýÈçmylist.append('an item')ÁбímylistÖÐÔö¼ÓÄǸö×Ö·û´®¡£×¢Ò⣬ʹÓà ......
Python ×Öµä
×ÖµäÀàËÆÓÚÄãͨ¹ýÁªÏµÈËÃû×Ö²éÕÒµØÖ·ºÍÁªÏµÈËÏêϸÇé¿öµÄµØÖ·²¾£¬¼´£¬ÎÒÃǰѼü£¨Ãû×Ö£©ºÍÖµ£¨ÏêϸÇé¿ö£©ÁªÏµÔÚÒ»Æð¡£×¢Ò⣬¼ü±ØÐëÊÇΨһµÄ£¬¾ÍÏñÈç¹ûÓÐÁ½¸öÈËÇ¡ÇÉͬÃûµÄ»°£¬ÄãÎÞ·¨ÕÒµ½ÕýÈ·µÄÐÅÏ¢¡£
×¢Ò⣬ÄãÖ»ÄÜʹÓò»¿É±äµÄ¶ÔÏ󣨱ÈÈç×Ö·û´®£©À´×÷Ϊ×ÖµäµÄ¼ü£¬µ«ÊÇÄã¿ÉÒÔ²»¿É±ä»ò¿É±äµÄ¶ÔÏó×÷Ϊ×ÖµäµÄÖµ¡£»ù±¾ËµÀ´¾ÍÊÇ£¬ÄãÓ¦¸ÃֻʹÓüòµ¥µÄ¶ÔÏó×÷Ϊ¼ü¡£
¼üÖµ¶ÔÔÚ×ÖµäÖÐÒÔÕâÑùµÄ·½Ê½±ê¼Ç£ºd = {key1 : value1, key2 : value2 }¡£×¢ÒâËüÃǵļü/Öµ¶ÔÓÃðºÅ·Ö¸î£¬¶ø¸÷¸ö¶ÔÓöººÅ·Ö¸î£¬ËùÓÐÕâЩ¶¼°üÀ¨ÔÚ»¨À¨ºÅÖС£
¼Çס×ÖµäÖеļü/Öµ¶ÔÊÇûÓÐ˳ÐòµÄ¡£Èç¹ûÄãÏëÒªÒ»¸öÌض¨µÄ˳Ðò£¬ÄÇôÄãÓ¦¸ÃÔÚʹÓÃÇ°×Ô¼º¶ÔËüÃÇÅÅÐò¡£
×ÖµäÊÇdictÀàµÄʵÀý/¶ÔÏó¡£
ʹÓÃ×Öµä
Àý9.4 ʹÓÃ×Öµä
#!/usr/bin/python
# Filename: using_dict.py
# 'ab' is short for 'a'ddress'b'ook
ab = { 'Swaroop' : 'swaroopch@byteofpython.info',
'Larry' : 'larry@wall.org',
  ......
Python ×Ö·û´®
×Ö·û´®ÊÇ ×Ö·ûµÄÐòÁÐ ¡£×Ö·û´®»ù±¾ÉϾÍÊÇÒ»×éµ¥´Ê¡£
ÎÒ¼¸ºõ¿ÉÒÔ±£Ö¤ÄãÔÚÿ¸öPython³ÌÐòÖж¼ÒªÓõ½×Ö·û´®£¬ËùÒÔÇëÌرðÁôÐÄÏÂÃæÕⲿ·ÖµÄÄÚÈÝ¡£ÏÂÃæ¸æËßÄãÈçºÎÔÚPythonÖÐʹÓÃ×Ö·û´®¡£
ʹÓõ¥ÒýºÅ£¨'£©
Äã¿ÉÒÔÓõ¥ÒýºÅָʾ×Ö·û´®£¬¾ÍÈçͬ'Quote me on this'ÕâÑù¡£ËùÓеĿհף¬¼´¿Õ¸ñºÍÖƱí·û¶¼ÕÕÔÑù±£Áô¡£
ʹÓÃË«ÒýºÅ£¨"£©
ÔÚË«ÒýºÅÖеÄ×Ö·û´®Óëµ¥ÒýºÅÖеÄ×Ö·û´®µÄʹÓÃÍêÈ«Ïàͬ£¬ÀýÈç"What's your name?"¡£
ʹÓÃÈýÒýºÅ£¨'''»ò"""£©
ÀûÓÃÈýÒýºÅ£¬Äã¿ÉÒÔָʾһ¸ö¶àÐеÄ×Ö·û´®¡£Äã¿ÉÒÔÔÚÈýÒýºÅÖÐ×ÔÓɵÄʹÓõ¥ÒýºÅºÍË«ÒýºÅ¡£ÀýÈ磺
'''This is a multi-line string. This is the first line.
This is the second line.
"What's your name?," I asked.
He said "Bond, James Bond."
'''
תÒå·û
¼ÙÉèÄãÏëÒªÔÚÒ»¸ö×Ö·û´®Öаüº¬Ò»¸öµ¥ÒýºÅ£¨'£©£¬ÄÇôÄã¸ÃÔõôָʾÕâ¸ö×Ö·û´®£¿ÀýÈ磬Õâ¸ö×Ö·û´®ÊÇWhat's your name?¡£Äã¿Ï¶¨²»»áÓÃ'What's your name?'À´Ö¸Ê¾Ëü£¬ÒòΪPython»áŪ²»Ã÷°×Õâ¸ö×Ö·û´®´ÓºÎ´¦¿ªÊ¼£¬ºÎ´¦½áÊø¡£ËùÒÔ£¬ÄãÐèÒªÖ¸Ã÷µ¥ÒýºÅ¶ø²»ÊÇ×Ö·û´®µÄ½áβ¡£¿ÉÒÔͨ¹ý תÒå·û À´Íê³ÉÕâ¸öÈÎÎñ¡£ÄãÓÃ/'À´Ö¸Ê¾µ¥ÒýºÅ——×¢ÒâÕâ¸ö·´Ð±¸Ü¡£ÏÖÔÚÄã¿ ......