Boost Python ʵÏÖCµ÷ÓÃpython´íÎó½â¾ö·½·¨
ÓÉÓÚBoost Python¸ú²»ÉÏPython°æ±¾¸üУ¬ÈçÏ·½·¨µ÷ÓÿÉÄܲúÉúTypeError: 'NoneType' object does not support item assignmentÒì³£¡£
Boost PythonÎĵµÖÐÀý×Ó¿ÉÄܲúÉúÒì³£¡£
Py_Initialize();
object main_module = import("__main__");
object main_dict = main_module.attr("__dict__");
try{
object result = exec("result = 5 + 5",main_dict);
int five_squared = extract<int>(main_dict["result"]);
cout<<"extract value : "<<five_squared<<endl;
cin>>ij;
}
catch(error_already_set){
PyErr_Print();
cin>>ij;
}
¿ÉÒÔÈçÏ·½·¨½â¾ö
Py_Initialize();
object main_module = import("__main__");
object main_dict = main_module.attr("__dict__");
try{
handle<> ignored((PyRun_String(
"result = 5 ** 2"
, Py_file_input
, main_dict.ptr()
, main_dict.ptr())
));
int five_squared = extract<int>(main_dict["result"]);
cout<<"extract value : "<<five_squared<<endl;
cin>>ij;
}
catch(error_already_set){
PyErr_Print();
cin>>ij;
}
Boost PythonÖÐÖ´Ðбí´ïʽº¯ÊýÒ²¿ÉÒÔÕý³£ÔËÐС£
Py_Initialize();
object main_module = import("__main__");
object main_dict = main_module.attr("__dict__");
try{
object result = eval("5 + 5",main_dict);
int five_squared = extract<int>(result);
cout<<"extract value : "<<five_squared<<endl;
cin>>ij;
}
catch(error_already_set){
Ïà¹ØÎĵµ£º
#coding=utf-8
from newtest.wiki.models import WiKi
from django.template import loader, Context
from django.http import HttpResponse, HttpResponseRedirect
from django.shortcuts import render_to_response
def index(request, pagename=""):
"""ÏÔʾÕý³£Ò³Ã棬¶ÔÒ³ÃæµÄÎÄ×Ö×öÌØÊâµÄÁ´½Ó´¦Àí"""
......
PythonÖеÄÎļþ²Ù×÷ÒÔ¼°ÊäÈëÊä³ö
ÎÒÃÇ¿ÉÒÔ·Ö±ðʹÓÃraw_inputºÍprintÓï¾äÀ´Íê³ÉÕâЩ¹¦ÄÜ¡£¶ÔÓÚÊä³ö£¬ÄãÒ²¿ÉÒÔʹÓöàÖÖ¶àÑùµÄstr£¨×Ö·û´®£©Àà¡£ÀýÈ磬ÄãÄܹ»Ê¹ÓÃrjust·½·¨À´µÃµ½Ò»¸ö°´Ò»¶¨¿í¶ÈÓÒ¶ÔÆëµÄ×Ö·û´®¡£ÀûÓÃhelp(str)»ñµÃ¸ü¶àÏêÇé¡£
ÁíÒ»¸ö³£ÓõÄÊäÈë/Êä³öÀàÐÍÊÇ´¦ÀíÎļþ¡£´´½¨¡¢¶ÁºÍдÎļþµÄÄÜÁ¦ÊÇ ......
PythonÖеÄÒì³£
µ±ÄãµÄ³ÌÐòÖгöÏÖijЩÒì³£µÄ×´¿öµÄʱºò£¬Òì³£¾Í·¢ÉúÁË¡£
Ò».´¦ÀíÒì³£
ÎÒÃÇ¿ÉÒÔʹÓÃtry..exceptÓï¾äÀ´´¦ÀíÒì³£¡£ÎÒÃǰÑͨ³£µÄÓï¾ä·ÅÔÚtry-¿éÖУ¬¶ø°ÑÎÒÃǵĴíÎó´¦ÀíÓï¾ä·ÅÔÚexcept-¿éÖС£
ÀýÈç:
#!/usr/bin/python
# Filename: try_except.py
import sys
try:
s = raw_input('E ......
C±ê×¼ÖеÄI/O¿âÊÇÒ»¸ö±È½ÏÅÓ´óµÄ¿â£¬ÊµÏÖÒ²±È½Ï¸´ÔÓ¡£ÏÔÈ»I/O¿âµÄʵÏÖÊÇÒÀÀµÓÚ²Ù×÷ϵͳµÄ£¬²»Í¬µÄϵͳÉÏI/O¿âµÄʵÏÖ»úÀíÊDz»Ò»ÑùµÄ¡£glibcÖУ¬I/O¿âµÄºËÐÄʵÏÖÔÚlibioĿ¼Ï¡£ÓÐ4¸öÍ·Îļþlibio.h, iolibio.h, libioP.h, strfile.h, stdio.h£¬ÆäÖÐstdio.hÊǵ¼³öµÄ±ê×¼CÍ·Îļþ£¬ÆäÓà¶¼ÊÇÄÚ²¿ÊµÏÖ¡£ÕâÀï²¢² ......
ÕâÀïÌṩµÄÖ»ÊÇÒ»¸öÖ§³Ö¹ÜµÀµÄÃüÁîÖ´ÐнӿÚ, ÖÁÓÚ»ñÈ¡ÃüÁî, À©Õ¹×Ô¼ºµÄÃüÁî, ¾Í²»ÔÙ׸Êö.
¶ÔÓÚϵͳµÄÃüÁî, ¿ÉÒÔÖ±½Óµ÷ÓÃÕâ¸ö½Ó¿Ú·½·¨, ¶à¸öÃüÁîÖ§³Ö¹ÜµÀ²Ù×÷. ·¢Éú´íÎóʱ, Òý·¢OSError.
1. Åжϴ«ÈëÃüÁîÊÇ·ñÊÇ×Ö·û´®ÀàÐÍ
2. ´«ÈëµÄÿ¸öÃüÁî.
3. ±éÀúËùÓÐÃüÁî.
4. »ñȡÿ¸öÃüÁîµÄÃüÁî¼°²ÎÊý
5. ¶¯Ì¬Ö´ÐÐPopen, ......