29 Ekim 2017 Pazar

python list Sınıfı

Giriş
Şu satırı dahil ederiz.
#include <boost/python.hpp>
#include <boost/python/list.hpp>
Kolay kullanım için şu satırı  dahil ederiz.
namespace bpy = boost::python;
Bu sınıf C++ ve python arasında veri değiş tokuşu için kullanılır.

Constructor 
Şöyle yaparız.
bpy::list py_list;
append metodu
Şöyle yaparız.
vector<string> strings = {"a","aa","aaa","aaaa"};

for(auto& s: strings){
  py_list.append(s);
}
Şöyle yaparız.
py_list.append(boost::python::make_tuple(20.0, 21.0, 22.0));
Diğer
extract metodu
Şu satırı dahil ederiz.
#include <boost/python.hpp>
#include <boost/python/list.hpp>
#include <boost/python/extract.hpp>
Şöyle yaparız
void many(boost::python::list msgs) {
  long l = len(msgs);

  for (long i = 0; i<l; ++i) {
    std::string s = boost::python::extract<std::string>(msgs[i]);
  }
}


Hiç yorum yok:

Yorum Gönder