Data Coding suggestions

S

steven.oldner

Just learning Python and have a project to create a weekly menu and a
shopping list from the menu. This is something I do manually now, so
I'm automating it.

What I'd like is a list of menu choices, such as:
CODE- Description - Est Cost

'B01 - Pancakes, Sausage,and Eggs - $5.80,
'L01 - Tuna Fish sandwices and chips -$ 4.25 ,
'D01 - Dirty Rice and Garlic Bread' - $5.70.

From the choices, I'll create a weekly menu, print the menu, and then
print list of ingredients ( and sum the commom items)

CODE- Item - Qty. - Unit
B01 - pancake mix - 1 - box
B01 - milk - .3 -gal
B01 - eggs - 10 - each
D01 - dirty rice mix - 1 - box
D01 - milk - .3 - gal.

I would like to expand the ingredient list to include other fields
like 'last purchase date' and 'reorder point'.

I've used an example program and started to code it but just realized
I've been coding ABAP in Python, that is set up a data structure and
use that. What I want is to learn code Python in Python.

Question: How should I set up the data? I'm looking at maybe 70 menu
items and maybe 1000 items for the shopping list. I need to be able
to maintain each item also.

I am using python 2.6 but would like to use 3.0.

Thanks for any suggestions!
 
S

Steve Holden

steven.oldner said:
Just learning Python and have a project to create a weekly menu and a
shopping list from the menu. This is something I do manually now, so
I'm automating it.

What I'd like is a list of menu choices, such as:
CODE- Description - Est Cost

'B01 - Pancakes, Sausage,and Eggs - $5.80,
'L01 - Tuna Fish sandwices and chips -$ 4.25 ,
'D01 - Dirty Rice and Garlic Bread' - $5.70.

print list of ingredients ( and sum the commom items)

CODE- Item - Qty. - Unit
B01 - pancake mix - 1 - box
B01 - milk - .3 -gal
B01 - eggs - 10 - each
D01 - dirty rice mix - 1 - box
D01 - milk - .3 - gal.

I would like to expand the ingredient list to include other fields
like 'last purchase date' and 'reorder point'.

I've used an example program and started to code it but just realized
I've been coding ABAP in Python, that is set up a data structure and
use that. What I want is to learn code Python in Python.

Question: How should I set up the data? I'm looking at maybe 70 menu
items and maybe 1000 items for the shopping list. I need to be able
to maintain each item also.

I am using python 2.6 but would like to use 3.0.
Well from the nature of the task it seems evident that the data should
be long-lived, and therefore need to be stored on disk. The natural way
to deal with them in the program would be to have recipes, each of which
was associated with a number of ingredient requirements, each of which
was associated with an ingredient.

That way, you can adjust the prices of your ingredients as the market
varies.

Recent versions of Python come with sqlite, a low-cost but surprisingly
efficient relational database implementation. I'd suggest using that,
with the following tables:

Recipe:
id integer primary key
name string

Ingredient
id integer primary key
name string
unit string [oz, gal, etc.]
cost number [cost per unit]

Requirement
recipe integer [id of recipe]
ingredient integer [id of ingredient]
quantity number [amount required for one serving]

So each recipe will have one row in the recipe table, a number of rows
in the requirement table, each of which points also to the relevant
ingredient.
From there it's a relatively simple task to work out how much of which
ingredients is required to create N helpings of a specific recipe, and
the cost as well.

It will mean understanding a little more about database than you perhaps
do right now, but that's a useful addition to any programmer's bag of
tricks.

regards
Steve
 
R

Rick Dooling

Just learning Python and have a project to create a weekly menu and a
shopping list from the menu.  
Question:  How should I set up the data?  I'm looking at maybe 70 menu
items and maybe 1000 items for the shopping list.  I need to be able
to maintain each item also.

I agree with Mr. Holden. It's a perfect exercise for using Python with
sqlite3.

And the nice thing about this documentation is it has plenty of good
examples:

http://docs.python.org/library/sqlite3.html

Good luck,

RD
 
S

steven.oldner

I agree with Mr. Holden. It's a perfect exercise for using Python with
sqlite3.

And the nice thing about this documentation is it has plenty of good
examples:

http://docs.python.org/library/sqlite3.html

Good luck,

RD

Thanks guys. While shopping today I've thought of a few more columns
for my data so my first item will be building the 3 DB tables and a
way to populate them. Since this was intended to automate what I do
on a weekly basis, I didn't think about adding recipes since I know
what I need for the family, but that's a good touch.

Item 1. Build 3 db tables
Item 2. Build app to populate tables.
Item 3. Build app to read tables and print lists.

Anything else?
 
K

Kurt Smith

Thanks guys.  While shopping today I've thought of a few more columns
for my data so my first item will be building the 3 DB tables and a
way to populate them.  Since this was intended to automate what I do
on a weekly basis, I didn't think about adding recipes since I know
what I need for the family, but that's a good touch.

Item 1. Build 3 db tables
Item 2. Build app to populate tables.
Item 3. Build app to read tables and print lists.

Anything else?

You might take a look at the source code for the Gourmet Recipe Manager

http://grecipe-manager.sourceforge.net/

It's written in python, has a persistent database (not sure if using
sqlite3) and you might be able to adapt it to your needs.

We use it for our shopping lists here and it's great.

Kurt
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,579
Members
45,053
Latest member
BrodieSola

Latest Threads

Top