Colección de citas famosas - Colección de poesías - Los diccionarios se pueden inicializar como un diccionario vacío.

Los diccionarios se pueden inicializar como un diccionario vacío.

#¿Incluir? ltiostream gt

#¿Contiene? ltPython.h gt

¿Usar? ¿Espacio de nombres? std

¿Nulo? hola mundo();

¿Nulo? add();

¿Nulo? TestTransferDict();

¿Nulo? clase de prueba();

int? principal()

{

cout? ¿Eh? "¿Primer lanzamiento? Prueba..."? ¿Eh? endl

cout? ¿Eh? "Hola Mundo()-"? ¿Eh? endl

hola mundo();

cout? ¿Eh? "Agregar()-"? ¿Eh? endl

add();

cout? ¿Eh? TestDict-? ¿Eh? endl

TestTransferDict();

cout? ¿Eh? ¿Clase de prueba? ¿Eh? endl

prueba de clase();

Sistema("pausa");

¿Regresar? 0;

}

//Llamar a la salida "¿Hola? Función "Mundo"

¿Nulo? HolaMundo()

{

p>

py_Initialize(); // Antes de usar Python, llame a Py_Initialize();

Objeto? *?pModule =?NULL//Declarar variables Objeto? *?pFunc? =?NULL//Variable de declaración

pModule? = py import _ import module ("prueba 001"); // El siguiente es el nombre de archivo de Python. p>

pFunc=?py object_GetAttrString(p module, "hello world");? //Aquí está el nombre de la función que se llamará

pye val_call. NULL);? // Llama a la función, NULL significa que el parámetro está vacío

py_Finalize(); // Llama a Py_Finalize, correspondiente a Py_Initialize

// Llama a la función Agregar. y pasar dos parámetros int

Void? Add()

{

py_Initialize( );

Object *?pModule? =?NULL

Objeto? =?NULL

pModule? "prueba 001"); //Test001: nombre de archivo Python

pFunc=? p módulo, "Agregar"); //agregar: Nombre de la función en el archivo Python

//Crear parámetros:

Número de objeto.

py tuple_SetItem(pArgs,?0,?py_build value("I",?5)); //0-número de serie Me refiero a crear una variable int.

py tuple_SetItem(pArgs,?1,?py_build value("I",?7)); //1-número de serie

//valor de retorno

Objeto? *¿Pre-dirección? =?NULL

¿Adelante? =?pye val _ call object (p func,? pArgs); // Llamar a la función

//Convierte el valor de retorno a tipo int.

int? resultado;

PyArg_Parse(pReturn, ? "i", ? amp resultado); //i significa conversión a variable int.

¿cómo? ¿Eh? "5 7? =?"? ¿Eh? ¿resultado? ¿Eh? endl

py_Finalize();

}

//El tipo de parámetro pasado es diccionario.

¿Nulo? TestTransferDict()

{

py_Initialize();

¿Objeto? *?pMódulo? =?NULL

¿Objeto? *?pFunción? =?NULL

pMódulo? = py import _ import module ("prueba 001"); //Prueba001: nombre del archivo Python

pFunc=? py object_GetAttrString (módulo p, "TestDict");? //agregar: nombre de la función en el archivo Python.

//Parámetros de creación:

¿Objeto? *¿Paquete? =?PyTuple_New(1);?

¿Objeto? *pDict? =?PyDict_New();? //Crear una variable de tipo diccionario

PyDict_SetItemString(pDict,?"Name",?py_build value("s",?"Wang Yao"));? //Rellena la variable de tipo diccionario con datos

PyDict_SetItemString(pDict,?"Age",?py_build value("I",?25));? //Rellena la variable de tipo diccionario con datos

py tuple_SetItem(pArgs, ?0, ?pDict); //0 - Número de serie Agrega la variable de tipo diccionario a la tupla del parámetro.

//Valor de retorno

¿Objeto? *¿Pre-dirección? =?NULL

¿Adelante? =?pye val _ call object (p func,? pArgs); // Llamar a la función

// Valor de retorno del proceso:

int? ¿tamaño? =?PyDict_Size(pReturn);

cout? ¿Eh? "¿El tamaño del diccionario devuelto es:?"? ¿Eh? ¿tamaño? ¿Eh? endl

¿Objeto? *p¿Nueva Era? =?PyDict_GetItemString(pReturn,?"age");

int? nueva era;

PyArg_Parse(pNewAge,? "i",? ampnew age);

cout? ¿Eh? "¿En serio? ¿Edad:?"? ¿Eh? ¿Nueva era? ¿Eh? endl

py_Finalize();

}

//Clase de prueba

¿Nulo? TestClass()

{

py_Initialize();

¿Objeto? *?pMódulo? =?NULL

¿Objeto? *?pFunción? =?NULL

pMódulo? = py import _ import module ("prueba 001"); //Prueba001: nombre del archivo Python

pFunc=? py object_GetAttrString (módulo p, "TestDict");? //agregar: nombre de la función en el archivo Python.

//¿Obtener objeto de clase Persona

? *pPersonaClase? =?py object _ GetAttrString (p módulo, "persona");

//Crea una instancia de la clase Persona.

¿Objeto? *pPersonaInstancia? =?py instancia_New(pclasssperson,?NULL,?NULL);

//Método de llamada

py object_call método(pInstancePerson,?"Saludos",?"s ",? " Hola gatito");? //s significa que se pasa una cadena, con el valor "¿Hola? Gatito"

py _ Finalize();

}#test.py

definición? HolaMundo():

¿Imprimir? "¿Hola? Mundo"

def? Añadir(a,?b):

¿Regresión? una b

definición? Diccionario de prueba (Diccionario):

¿Imprimir? Diccionario

¿Diccionado【"edad"】? =?17

¿Volver? Diccionario

¿Clase? Persona:

def? Saludate greetStr):

¿Imprimir? saludarStr

#Imprimir? Suma (5, 7)

#a? =?raw_input("¿Entrar? ¿Adónde ir? Continuar..." Resultado:

Configuración:

Tenga en cuenta dos puntos:

Si compila la depuración versión, copie python26.lib en C:/Python26/libs y cámbiele el nombre a Python26_d.lib

¿Recuerda poner el directorio actual del proyecto?

¿Pasó la prueba?