Я только начал с java и попробовал chaquopy, чтобы запустить некоторые скрипты в моем приложении android. Дело в том, что когда я вызываю нужную мне функцию, она возвращает значение (user_input), но я не могу понять, как получить это значение в Android. Я взглянул на методы PyObject и не нашел способа вернуть нужное мне целое число (df ['y'] [1]).
def realtime(user_input):
#Libraries
import datetime
import requests
import pandas as pd
import numpy as np
import pandas_datareader as web
#Get the data
currentDT = datetime.datetime.now()
end=str(currentDT.year)+'-'+str(currentDT.month)+'-'+str(currentDT.day)
start=str(currentDT.year)+'-'+str(currentDT.month-1)+'-'+str(currentDT.day)
df = web.DataReader(str(user_input), data_source='yahoo',start=start,end=end)
df = pd.DataFrame(data=df['Close'])
df.columns=['y']
df['ds']=df.index
return(df['y'][1])
Это функция, которую я вызываю в java.
public int getrtasset() {
Python py = Python.getInstance();
PyObject pyfile = py.getModule("getAssetValue");
PyObject va = pyfile.callAttr("realtime", getMtitulo());
return va
}
А это функция java. «getAssetValue» - это имя .py . Я хочу вернуть целое число функции python, но не могу найти метод для получения этого возвращаемого значения в PyObject va.
Заранее спасибо.
Решено : Это было двойное .. PyObject.toDouble () решил это.