Как вернуть значение (не объект) в Android из функции chaquopy python - PullRequest
0 голосов
/ 29 апреля 2020

Я только начал с 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 () решил это.

...