當前位置:成語大全網 - 書法字典 - 字典可以初始化為空字典。

字典可以初始化為空字典。

#包含?& ltiostream & gt

#包含?& ltPython.h & gt

使用?名稱空間?std

虛空?hello world();

虛空?add();

虛空?TestTransferDict();

虛空?test class();

int?主()

{

cout?& lt& lt?“首發?測試。。。”?& lt& lt?endl

cout?& lt& lt?“hello world()-“?& lt& lt?endl

hello world();

cout?& lt& lt?“Add()-“?& lt& lt?endl

add();

cout?& lt& lt?TestDict -?& lt& lt?endl

TestTransferDict();

cout?& lt& lt?測試類-?& lt& lt?endl

test class();

系統(“暫停”);

回歸?0;

}

//調用輸出“Hello?“世界”功能

虛空?HelloWorld()

{

py _ Initialize();//在使用python之前,調用Py _ Initialize();該函數被初始化。

對象?*?pModule?=?NULL//聲明變量

對象?*?pFunc?=?NULL//聲明變量

pModule?= py import _ import module(“test 001“);//下面是要調用的Python文件名。

pFunc=?py object _ GetAttrString(p module,“hello world”);?//這裏是要調用的函數的名稱。

pye val _ call object(p func,?NULL);?//調用函數,NULL表示參數為空。

py _ Finalize();//調用Py_Finalize,對應Py_Initialize。

}

//調用Add函數並傳遞兩個int參數。

虛空?添加()

{

py _ Initialize();

對象?*?pModule?=?NULL

對象?*?pFunc?=?NULL

pModule?= py import _ import module(“test 001“);//Test001:Python文件名

pFunc=?py object _ GetAttrString(p module,“添加”);//add:Python文件中的函數名。

//創建參數:

對象?*包裝?=?PyTuple _ New(2);?//函數調用的參數傳遞都以元組的形式打包,2表示參數個數。

py tuple _ SetItem(pArgs,?0,?py _ build value(“I“,?5));//0-序列號I表示創建壹個int變量。

py tuple _ SetItem(pArgs,?1,?py _ build value(“I“,?7));//1-序列號

//返回值

對象?*預轉向?=?NULL

預轉?=?pye val _ call object(p func,?pArgs);//調用函數

//將返回值轉換為int類型。

int?結果;

PyArg _ Parse(pReturn,?“我”,?& amp結果);//i表示轉換為int變量。

cout?& lt& lt?"5+7?=?"?& lt& lt?結果?& lt& lt?endl

py _ Finalize();

}

//傳遞的參數類型是dictionary。

虛空?TestTransferDict()

{

py _ Initialize();

對象?*?pModule?=?NULL

對象?*?pFunc?=?NULL

pModule?= py import _ import module(“test 001“);//Test001:Python文件名

pFunc=?py object _ GetAttrString(p module,“TestDict“);?//add:Python文件中的函數名。

//創建參數:

對象?*包裝?=?PyTuple _ New(1);?

對象?*pDict?=?PyDict _ New();?//創建字典類型變量

PyDict _ SetItemString(pDict,?“姓名”,?py _ build value(“s“,?“王耀”));?//用數據填充字典類型變量

PyDict _ SetItemString(pDict,?“年齡”,?py _ build value(“I“,?25));?//用數據填充字典類型變量

py tuple _ SetItem(pArgs,?0,?pDict);//0-序列號將字典類型變量添加到參數元組中。

//返回值

對象?*預轉向?=?NULL

預轉?=?pye val _ call object(p func,?pArgs);//調用函數

//處理返回值:

int?尺寸?=?PyDict _ Size(pReturn);

cout?& lt& lt?“返回的詞典大小為:?“?& lt& lt?尺寸?& lt& lt?endl

對象?*pNewAge?=?PyDict _ GetItemString(pReturn,?“年齡”);

int?新時代;

PyArg _ Parse(pNewAge,?“我”,?& ampnew age);

cout?& lt& lt?“真的嗎?年齡:?”?& lt& lt?新時代?& lt& lt?endl

py _ Finalize();

}

//測試類

虛空?測試類()

{

py _ Initialize();

對象?*?pModule?=?NULL

對象?*?pFunc?=?NULL

pModule?= py import _ import module(“test 001“);//Test001:Python文件名

pFunc=?py object _ GetAttrString(p module,“TestDict“);?//add:Python文件中的函數名。

//獲取Person類

對象?*pClassPerson?=?py object _ GetAttrString(p module,“人”);

//創建Person類的實例。

對象?*pInstancePerson?=?py instance _ New(pclasssperson,?NULL,?NULL);

//調用方法

py object _ call method(pInstancePerson,?“問候”,?“s”,?“餵?kitty“);?//s表示傳遞了壹個字符串,值為“Hello?小貓“

py _ Finalize();

}#test.py

def?HelloWorld():

打印?“餵?世界“

def?添加(a,?b):

回歸?a+b

def?測試字典(字典):

打印?詞典

dict【“年齡”】?=?17

回歸?詞典

上課?人:

def?問候自己greetStr):

打印?greetStr

#打印?加法(5,7)

#a?=?raw _ input(“Enter?去哪?繼續……”結果:

配置:

註意兩點:

如果編譯調試版本,請復制C:/Python26/libs下的python26.lib並將其重命名為Python26 _ d.lib。

記得把項目的當前目錄。

測試通過了?