Список в двух функциях в Python - PullRequest
0 голосов
/ 18 марта 2019

У меня есть две функции, мне нужно, чтобы список из первой функции читался для второй, две в одном и том же виде в приложении django, и они создают два разных шаблона.

def gerar_graficos(request):
    descricao = None
    descricao2 = None

    if request.method=='POST':
        descricao = request.POST['descricao']
        descricao2 = request.POST['descricao2']
    conn = cx_Oracle.connect('banco de dados')
    cur = conn.cursor()

    cur.execute(consulta.format(descricao, descricao2))
    teste = list()
    teste2 = list()
    teste3 = list()
    teste4 = list()
    d = 0
    for line in cur:
        teste.extend(line)
    for indice, c in enumerate(teste):
        #if c + 0 == c:
            teste3.extend([c - 10000])
        #else:
            d = 0

    cur.execute(consulta.format(descricao, descricao2))
    for coluna in cur:
        teste2.extend(coluna)
    for indice2, c in enumerate(teste2):
        if indice2 >= d:
            teste4.extend([c])

    y_axis = teste3
    x_axis = teste4
    width_n = 0.001
    bar_color = 'yellow'

    cur.close()
    conn.close()

    context = { 'descricao': descricao, 'descricao2': descricao2 }
    return render(request, 'core/graficos_list.html', context)

Передайте списки teste3 и teste4 для этой функции:

def index(request, graficos):
    fig = Figure()
    ax = fig.add_subplot(1,1,1)
    ax.plot(teste3, teste4)
    ax.grid()
    buf = io.BytesIO()
    canvas = FigureCanvas(fig)
    canvas.print_png(buf)
    response=HttpResponse(buf.getvalue(), content_type='image/png')
    return (response)
...