размещение всех данных из списка в отдельной метке tkinter

#python #list #tkinter #label

#python #Список #tkinter #метка

Вопрос:

Я пытаюсь создать функцию, в которой она печатает строки и столбцы строки из списка.

 input_data_col1 = [row1,row2,row3]
input_data_col2 = [row1,row2,row3]
input_data_col3 = [row1,row2,row3]
input_data_col4 = [row1,row2,row3]
  

Желаемый результат: (в метке tkinter с привязкой к сетке)

 row1    row1    row1    row1
row2    row2    row2    row2
row3    row3    row3    row3
  

Любая помощь будет оценена, спасибо.

Комментарии:

1. Взгляните на, pandas.DataFrame

2. Существует множество документации о том, как расположить виджеты в сетке, и на этом сайте есть вопросы, которые показывают, как создавать таблицы. Неясно, какая конкретная помощь вам нужна. Можете ли вы показать, что вы пробовали?

Ответ №1:

 def func(ina, inb, inc, ind):
  print('n'.join('    '.join(['{:.4f}'.format(x) for x in l]) for l in [ina, inb, inc, ind]))
  

Это очень наивный подход, который не будет работать на практике. На самом деле вы должны хранить их в таблице данных. Загляните в pandas.DataFrame документацию объекта.

Для краткого примера рассмотрим массив:

 data = [[0, 1, 2], [3, 4, 5], [6, 7, 8], [9, 10, 11]
  

Вы можете создать таблицу данных pandas из этих данных, используя

 pandas.DataFrame(data)
  

Вы можете добавлять метки строк таким образом:

 labels = [“a”, “b”, “c”, “d”]
pandas.DataFrame(data, labels)
  

Есть много других вещей, которые вы можете сделать с библиотекой pandas, вот почему я настоятельно рекомендую прочитать ее документацию.

Впоследствии OP изменил свой вопрос, так что вот мой обновленный ответ

Вы могли бы создать таблицу меток, затем поместить каждую в уникальную ячейку, например

 def func(data):
  labels = [[Label(root, text = cell) for cell in y] for y in data]
  for i in range(len(labels)):
    for j in range(len(labels[i])):
      labels[i][j].grid(i, j)
  

Комментарии:

1. Интересно, спасибо. Я прочитаю это. Как бы я распределил данные в сетке 4×4 по меткам с помощью tkinter?

2. спасибо, это сработало, но я не смог установить panda на свой Mac, поэтому я должен сделать это на своем ПК. Пришлось прибегнуть к какому-то немодульному методу, но полезная информация, для некоторых будущих проектов, еще раз спасибо

3. Нет проблем. Просто в следующий раз постарайтесь больше сосредоточиться на своем первоначальном вопросе и будьте конкретны.