ºÜºÃµÄc++ºÍPython»ìºÏ±à³ÌÎÄÕÂ
http://www.cppblog.com/jacky2019/archive/2007/05/17/24269.html
c++ÖÐǶÈëpythonÈëÃÅ1
±¾ÈËÊÇÓÃvc2003+python2.5ѧϰµÄ£¬ÆäËüµÄÒ²Ó¦¸Ã²î²»Á˶àÉÙ
0. »µ¾³ÉèÖÃ
°ÑpythonµÄinclude/libsĿ¼·Ö±ð¼Óµ½vcµÄinclude/lib directoriesÖÐÈ¥¡£ÁíÍ⣬ÓÉÓÚpythonûÓÐÌṩdebug lib£¬ÌåµØËµ£¬¾ÍÊÇûÓÐÌṩpython25_d.libÁË¡£Äã¿ÉÒÔ×Ô¼º±àÒëpythonµÄÔ´´úÂëÀ´µÃµ½python25_d.libµÄ£¬Å¼»¹Ã»ÊÔ¹ý£¬ºÇºÇ¡£¶øÇÒÍøÉÏÕÒÁËÒ»ÏÂҲûÏÂÔØµ½¡£ËùÒÔ£¬Èç¹ûÄãÏëÒªÔÚdebugÏÂÔËÐгÌÐòµÄ»°£¬ÄãÒª°Ñpyconfig.h£¨ÔÚpython25/include/Ŀ¼Ï£©µÄ´ó¸ÅÊÇÔÚ283ÐУ¬°Ñpragma comment(lib,"python25_d.lib")¸Ä³Épragma comment(lib,"python25.lib")£¬ÈÃpython¶¼Ê¹Ó÷Çdebug lib.
1. ¿ªÊ¼±à³ÌÁË
#include <python.h>
µÚÒ»²½¾ÍÊǰüº¬pythonµÄÍ·Îļþ
2. ¿´Ò»¸öºÜ¼òµ¥µÄÀý×Ó
1)pythonÎļþtest.py£¬ºÜ¼òµ¥µÄ¶¨ÒåÁËÒ»¸öº¯Êý
#Filename test.py
def Hello():
print "Hello, world!"
Õâ¸öÓ¦¸ÃÄÜ¿´¶®µÄ°É£¿·ñÔòµÄ»°£¬»ØÈ¥ÔÙÁ·Á·python°É£¬ºÇºÇ¡£¡¶¼òÃ÷Python½Ì³Ì¡·Swaroop, C. H. Öø¡£Éò½àÔª Òë¡£
2)cppÎļþ
#include <python.h> //°üº¬Í·Îļþ£¬ÔÚc++ÖÐǶÈëpython£¬ÕâÊDZØÐëµÄ
int main()
{
Py_Initialize();
PyObject * pModule = NULL;
PyObject * pFunc = NULL;
pModule = PyImport_ImportModule("test");
pFunc = PyObject_GetAttrString(pModule, "Hello");
PyEval_CallObject(pFunc, NULL);
Py_Finalize();
return 0;
}
µÚÒ»²½»¹Êǰüº¬Í·Îļþ
µÚ¶þ²½£¬Ê¹ÓÃpython֮ǰ£¬Òªµ÷ÓÃPy_Initialize();Õâ¸öº¯Êý½øÐгõʼ»¯¡£
°ïÖúÎĵµÖÐÈçÊÇ˵£º
The basic initialization function is Py_Initialize(). This initializes the table of loaded modules, and creates the fundamental modules __builtin__, __main__, sys, and exceptions. It also initializes the module search path (sys.path).
·´Õý£¬Ò»¿ªÊ¼ÄãÒ»¶¨Òªµ÷Óá£
µÚÈý²½£¬ÉùÃ÷һЩPythonµÄ±äÁ¿£¬PyObjectÀàÐ͵ġ£ÆäʵÉùÃ÷Ò²¿É·ÅÔÚÇ°Ãæ£¬Õâ¸öµ¹ÊÇÎÞËùνµÄ¡£
µÚËIJ½£¬import module£¬Ò²¾ÍÊÇÄãµÄ½Å±¾Ãû×Ö£¬²»ÐèÒª¼Óºó׺Ãû£¬·ñÔò»á³ö´íµÄ¡£
µÚÎå²½£¬´ÓÄãimport½øÀ´µÄmoduleÖеõ½ÄãÒªµÄº¯Êý
pFunc = PyObject_GetAttrString(pModule, "Hello");
ÉÏÃæµÄÀý×ÓÒѾ¹»Çå³þ
Ïà¹ØÎĵµ£º
¿Í»§¸øÒ»¶ÑͼƬҪ´«µ½ºǫ́£¬Í¼Æ¬Ì«´óÁË£¬ÉϰÙÕÅͼÓÃphotoshop¸ÄÌ«Âý£¬¾ÍÏëµ½ÓÃpythonд¸ö¼òµ¥µÄÅú´¦Àí¡£¹¦Äܼòµ¥¾ÍÊǰÑÔͼ°´±ÈÀýËõС£¬´úÂë¸ü¼òµ¥ 20¶àÐС£
# -*- coding: cp936 -*-
import Image
import glob, os
#ͼƬÅú´¦Àí
def timage():
for files in glob.glob('D:\\1\\*.JPG'):
filepath,filena ......
Ò»¸öPython½Å±¾µÄ¿ª·¢È«¹ý³Ì
ÎÊÌ⣺Íê³ÉÒ»¸ö¿ÉÒÔΪÎÒÃÇËùÓеÄÖØÒª³ÌÐò×ö±¸·ÝµÄ³ÌÐò¡£
²½Öè²ð½â£º
ÐèÒª±¸·ÝµÄÎļþºÍĿ¼ÓÉÒ»¸öÁбíÖ¸¶¨¡£
Îļþ±¸·Ý³ÉÒ»¸özipÎļþ¡£
zip´æµµµÄÃû³ÆÊǵ±Ç°µÄÈÕÆÚºÍʱ¼ä¡£
ÎÒÃÇʹÓñê×¼µÄzipÃüÁËüͨ³£Ä¬ÈϵØËæLinux/Unix·¢ÐаæÌṩ¡£WindowsÓû§¿ÉÒÔʹÓÃInfo-Zip³ÌÐò¡£×¢Òâ ......
PythonµÄÃæÏò¶ÔÏóÐÔÖÊ
ÀàºÍ¶ÔÏóÊÇÃæÏò¶ÔÏó±à³ÌµÄÁ½¸öÖ÷Òª·½Ãæ¡£Àà´´½¨Ò»¸öÐÂÀàÐÍ£¬¶ø¶ÔÏóÕâ¸öÀàµÄ ʵÀý ¡£ÕâÀàËÆÓÚÄãÓÐÒ»¸öintÀàÐ͵ıäÁ¿£¬Õâ´æ´¢ÕûÊýµÄ±äÁ¿ÊÇintÀàµÄʵÀý£¨¶ÔÏ󣩡£
ÐèҪעÒâµÄÊÇ£¬ÔÚPythonÖУ¬¼´±ãÊÇÕûÊýÒ²±»×÷Ϊ¶ÔÏó£¨ÊôÓÚintÀࣩ¡£ÕâºÍC++¡¢Java£¨1.5°æÖ®Ç°£©°ÑÕûÊý´¿´â×÷ΪÀàÐÍÊDz»Í¬µÄ¡£Í¨¹ ......
×î½üÒòΪÑо¿Ò»¸ö¶«Î÷£¬²¢ÇÒÔںܾÃÒÔǰ¾ÍÏë°ÑpythonºÃºÃ¿´¿´¡£ÕýºÃÂú×ãÎ񵀼̮æÐÄ¡£ÎÒÿÌìÉϰà×öµÃÓÎÏ·¶¼ÊÇÓÃlua£¬Ò²ÊÇÒ»ÃźÜÇ¿´óµÄ½Å±¾ÓïÑÔ¡£¿ÉÄÜÎÒ¸üϲ»¶pythonµÄËõ½øÇø·ÖºÍÃæÏò¶ÔÏó°É¡£ ½ñÌìֻдһ¸ö¼òµ¥µÄÀý×Ó¡£Ò»¸ö¼òµ¥µÄpython½Å±¾£¬¾ÍÒ»¸öº¯Êý£¬ÓÃC/C++È¥µ÷Ó᣿ÉÄÜÕâÒ²ÊÇ×÷Ϊ³ÌÐòÀ´Ëµ×î¹ØÐĵÄÒ»¼þÊ¡£ËùÒÔÎÒµÄpytho ......
1.JavaÔÚÐéÄâ»úÉÏÔËÐÐ
JavaÔ´´úÂë²¢²»ÊDZ»±àÒë³ÉΪÆÕͨµÄ»úÆ÷´úÂë¡£¶øÊDZ»·Òë³ÉΪÐéÄâ»ú¿ÉÒÔÖ´ÐеĴúÂë¡£Ò»¸öJava½âÊÍÆ÷×îÖÕÖ´ÐÐÕâЩ´úÂë¡£ÕâÆäÖÐûÓÐÁ¬½ÓµÄ¹ý³Ì£»½âÊÍÔÚÐèÒªµÄʱºò¶¯Ì¬µÄ¼ÓÔØÒ»Ð©Àࣻ
2.JavaÊÇÍêÈ«ÃæÏò¶ÔÏóµÄ
JavaÊÇÒ»ÖÖÍêÈ«ÃæÏò¶ÔÏóµÄÓïÑÔ¡£ÕâÒâζ×ÅÄã¶ÔÈκÎÒ»¸öJava¶ÔÏóËù×öµÄ¶¯×÷¶¼ÊÇͨ¹ýÒ ......