Maison  >  Questions et réponses  >  le corps du texte

python3.x - C++ appelant python3

Environnement : win10 + vs2015 (Débogage 32 bits) + anaconda3 (32 bits)

Vous devez d'abord configurer l'environnement, créer un programme console win32, puis configurer le projet.
Projet–>Propriétés–>répertoire vc++–>Répertoire d'inclusion Ajoutez le répertoire d'inclusion dans le répertoire d'installation de python
Projet–>Propriétés–>répertoire vc++–>Répertoire de bibliothèque Ajoutez le répertoire libs dans le répertoire d'installation de python
Linker– >Entrée –>Des dépendances supplémentaires ajoutent python36.lib

Allez à cette étape et exécutez le programme :

#include <iostream> 
#include <stdio.h>
#include <stdlib.h>
#include <Python.h>
#include <string.h>

using namespace std;

int main()
{

    Py_Initialize();
    PyRun_SimpleString("import pylab");
    PyRun_SimpleString("pylab.plot(range(5))");
    PyRun_SimpleString("pylab.show()");
    Py_Exit(0);

    return 0;
}

Le message d'erreur ne trouve pas python36_d.lib.

Solution Baidu : si le projet C++ utilise la version debug, vous devez copier le fichier python36.lib sous le dossier libs dans le répertoire d'installation de python et changer le nom en python36_d.lib

Crash en cours d'exécution :

S'il vous plaît, aidez-moi à le résoudre.

---------------------------------Ajout supplémentaire------------- --- ----

Ma machine a anaconda2 et anaconda3 installés, les deux sont en 32 bits. Actuellement, je n'utilise que python3. Les répertoires d'installation sont :
E:SoftwaresAnaconda3
E:SoftwaresAnaconda2

.
天蓬老师天蓬老师2735 Il y a quelques jours922

répondre à tous(2)je répondrai

  • 高洛峰

    高洛峰2017-05-16 13:29:09

    Utilisons py2, py2 peut être utilisé, mais je n'ai toujours pas résolu les problèmes ci-dessus avec py3

    répondre
    0
  • 怪我咯

    怪我咯2017-05-16 13:29:09

    Ce rapport d'erreur est écrit assez clairement. Le chargement du module encodings a échoué. Cela dépend de l'endroit où il est importé.
    Alors vérifiez

    1. Est-ce que ce module existe

    2. S'il y a ce module, est-ce que l'adresse de ce module est dans la variable d'environnement

    répondre
    0
  • Annulerrépondre