Найти - Пользователи
Полная версия: Таблицы и Питон
Начало » Python для новичков » Таблицы и Питон
1
sandra005
Здравствуйте! Я совсем новичок. Прошу помощи - в каком направлении мне двигаться.
Есть такая задача:
Представим себе огромную табличку. Столбцы - это температура, строки это название пробы, на пересечении вязкость пробы при заданной температуре.
Создать программу, чтобы там открывались поля, куда мы записываем название пробы, температуру, значение вязкости и все это вносится в такую таблицу, при этом фиксируется дата, когда вносились данные.
Если данное значение вязкости в таблице уже было, то старое не должно стираться, а сохраняются все значения.
Далее можно выполнять поиск: ввести в поле название пробы, температуру, и появится вязкость - последнее значение. Также можно просмотреть и старые значения, если есть.
Еще возможность ввести название пробы, и чтобы вывелись вязкости при всех температурах, которые имеются для этой пробы.
Еще чтобы через заданный промежуток времени, значение вязкости выводилось , но автоматически помечалось как неактуальное (например, цветом).

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

Далее планируется еще ряд расширений данной программы, но хотелось бы начать хотя бы с этого.

Подскажите, пожалуйста, с чего начать, что лучше использовать для решения такой задачи.
PEHDOM
sandra005
Подскажите, пожалуйста, с чего начать, что лучше использовать для решения такой задачи.
с Екселя? я лично не вижу тут ничего что нельзя было бы реализовать через ексель или его аналоги.
Имеет ли смысл использовать пайтон? Или вы планируете в дальнейшем расширять функциональность?
sandra005
Таблица в ексель слишком громоздкая, с ней работать неудобно.
И вторая цель данной задачи - повышение моего уровня работы с Питон.
sandra005
Да, я планирую еще много чего туда добавить.
PEHDOM
sandra005
И вторая цель данной задачи - повышение моего уровня работы с Питон.
ну тогда начните с изчения работы с встраиваемыми БД, сгодиться любая встраиваемая БД: SQLite, Firebird и тд… как создавать таблицы, как добавлять записи, как искать…
AD0DE412
PEHDOM так ему/ей еще GUI нужен как ой то
а это отдельная песня
мм … sandra005 ну очень похоже на ваш случай
Марк Лутц. Программирование на Python. Том 1 Часть I
ну и см. выше еще
ps ссылка как ая то глюычная … была
исправлено
PEHDOM
AD0DE412
PEHDOM так ему/ей еще GUI нужен как ой то
Ну накидать на форму контролов дело нехитрое, а вот кривой запрос к БД, способен уложить целый кластер. НО вообще да, начать с Лутца хорошая идея.
doza_and
Для новичка учить sqlite,Qt?

Начните с элементарных типов данных и простейших файловых операций.
Потренируйтесь делать на питоне функции которые реализуют ваши запросы.
Потом можно будет сделать что запросы из файла читаются как в SQL по пути вы сами на большинство своих вопросов ответите.
 import datetime
import pickle
from collections import defaultdict
import os
data_file = "some_talbe.pkl"
# если данных нет создаем пустые если есть читаем
if os.path.exists(data_file):
   with open(data_file,"rb") as f:
       data = pickle.load(f)
else:
      data=defaultdict(list)
# изменения можно записывать или отменять
def save():
   with open(data_file,"wb") as f:
       pickle.dump(data,f)
# реализуйте ваши хотелки в виде отдельных функций
def add(sample_name:str, temperature:int, v:float):
      """добавление измерения"""
      t=datetime.datetime.now()
      data[(sample_name,temperature)].append((t,v))
def find_by_sample_t(sample_name:str, temperature:int):
      return data[(sample_name,temperature)]
....
Замечу что ваши данные это вовсе не таблица. И если вы о них так будете думать то это вам будет сильно мешать.
py.user.next
sandra005
Далее планируется еще ряд расширений данной программы, но хотелось бы начать хотя бы с этого.

Подскажите, пожалуйста, с чего начать, что лучше использовать для решения такой задачи.
Вот это “хотя бы это” ты даже близко не потянешь по реализации. У тебя ложное представление о сложности программы, делающей всё это. Чтобы в этом убедиться, можешь написать программу с одним столбцом, в котором числа сохраняются после ввода так, что при следующем запуске программы те же самые числа находятся на своих местах. Когда ты её не напишешь, приложив при этом кучу усилий для реализации, тогда ты и поймёшь, что ты не знаешь ничего.

sandra005
И вторая цель данной задачи - повышение моего уровня работы с Питон.
Надо учиться последовательно. Если ты ноль, то надо для нулей материалы искать, чтобы стать единичкой. Если ты единичка, то надо для единичек материалы искать, чтобы стать двоечкой. И так далее. Сразу на уровень сто залезть не получится. Это только в кино про Гарри Поттера можно взять волшебную палочку и стать всемогущим. В жизни же реальной оно не так всё работает.

Так что начинай с примеров попроще. Начни с самых простейших примеров. Возможно, ты их не сможешь сделать вообще и для тебя это станет целым открытием.
sandra005
Спасибо всем за ответы!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB