Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 20, 2022 17:17:19

Lostns
Зарегистрирован: 2022-04-20
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Выгрузка трехмерного списка в окно результата

Добрый день!
Помогите разобраться, как при выгрузке трехмерного списка в окно результатов, разбить списки из каждого уровня на отдельные колонки?


 import math
import tkinter as tk
from tkinter import Frame
from tkinter import ttk
class LP:
def l_p(self):
h_data=[10.0, 12.0]
m_data=[0.12, 0.13]
swat_data=[0.2, 0.25]
k_data=[150.0, 160.0]
pzak2=[7.0, 6.5, 6.0, 5.5]
ppl = 5
rsk = 12.2
mu1 = 0.578
g =9.80665
plot1 = 792.8
dNKT = 168
t2=480
self.QN_LP_1=[]
for h,m,swat,k in zip(h_data, m_data, swat_data, k_data):
tm=[]
tmn=1
while tmn<=t2:
tm.append(tmn)
tmn=tmn+10
qn_1=[]
for e in pzak2:
qn1=[]
for l in tm:
qnn_1=float((2*math.pi*6.12*10**-2*k*h*(e-(e-ppl)*(l/t2)-ppl))/(mu1*math.log((100*0.7583*l**0.3698)/rsk))-(((math.pi*10**3/(4*g))*dNKT**2)/plot1)*((e-ppl)/t2))
qn1.append(qnn_1)
qn_1.append(qn1)
qn_1=[[i for i in j if i>0] for j in qn_1]
self.QN_LP_1.append(qn_1)
print ('QN',self.QN_LP_1)
def r_w(self):
self.l_p()
win_result2_1 = tk.Toplevel(win)
win_result2_1.wm_title('Результаты')
frame1 = Frame(win_result2_1 , width=300, height=150)
frame1.grid(row=1, column=0)
table1=ttk.Treeview(frame1)
table1['show']='headings'
table1['columns']=list(range(0,len(self.QN_LP_1)))
for i in range(0,len(self.QN_LP_1)):
table1.column(i, width=100)
table1.heading(i,text="QN {} пропласток".format(i+1))
for i in zip(*self.QN_LP_1):
for j in zip(*i):
table1.insert('', 'end', values=j)
table1.grid()
win=tk.Tk()
LP=LP()
ttk.Button(win, text='Расчет',command = LP.r_w).grid(row=17,column=1,stick='we')
win.mainloop() 

Офлайн

#2 Апрель 20, 2022 17:50:02

xam1816
Зарегистрирован: 2020-05-11
Сообщения: 1393
Репутация: +  124  -
Профиль   Отправить e-mail  

Выгрузка трехмерного списка в окно результата

в коде сделайте отступы

Офлайн

#3 Апрель 20, 2022 17:53:22

Lostns
Зарегистрирован: 2022-04-20
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Выгрузка трехмерного списка в окно результата


import math
import tkinter as tk
from tkinter import Frame
from tkinter import ttk



class LP:
def l_p(self):
h_data=[10.0, 12.0]
m_data=[0.12, 0.13]
swat_data=[0.2, 0.25]
k_data=[150.0, 160.0]
pzak2=[7.0, 6.5, 6.0, 5.5]
ppl = 5
rsk = 12.2
mu1 = 0.578
g =9.80665
plot1 = 792.8
dNKT = 168
t2=480

self.QN_LP_1=[]
for h,m,swat,k in zip(h_data, m_data, swat_data, k_data):
tm=[]
tmn=1
while tmn<=t2:
tm.append(tmn)
tmn=tmn+10
qn_1=[]
for e in pzak2:
qn1=[]
for l in tm:
qnn_1=float((2*math.pi*6.12*10**-2*k*h*(e-(e-ppl)*(l/t2)-ppl))/(mu1*math.log((100*0.7583*l**0.3698)/rsk))-(((math.pi*10**3/(4*g))*dNKT**2)/plot1)*((e-ppl)/t2))
qn1.append(qnn_1)
qn_1.append(qn1)

qn_1=[[i for i in j if i>0] for j in qn_1]
self.QN_LP_1.append(qn_1)
print ('QN',self.QN_LP_1)


def r_w(self):
self.l_p()
win_result2_1 = tk.Toplevel(win)
win_result2_1.wm_title('Результаты')


frame1 = Frame(win_result2_1 , width=300, height=150)
frame1.grid(row=1, column=0)

table1=ttk.Treeview(frame1)
table1['show']='headings'
table1['columns']=list(range(0,len(self.QN_LP_1)))

for i in range(0,len(self.QN_LP_1)):
table1.column(i, width=100)
table1.heading(i,text="QN {} пропласток".format(i+1))

for i in zip(*self.QN_LP_1):
for j in zip(*i):
table1.insert('', 'end', values=j)
table1.grid()

win=tk.Tk()
LP=LP()
ttk.Button(win, text='Расчет',command = LP.r_w).grid(row=17,column=1,stick='we')
win.mainloop()
xam1816
в коде сделайте отступы

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version