Advertisement
Guest User

Chem

a guest
Aug 25th, 2012
586
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.39 KB | None | 0 0
  1. import csv
  2.  
  3. def split_uppercase(string):
  4.     x=''
  5.     for i in string:
  6.         if i.isupper(): x+=' %s' %i
  7.         else: x+=i
  8.     return x.strip()
  9.  
  10. #Read in data and store it in dictionary
  11. elemen_data = { element.lower():weight for element,weight in csv.reader(open("chem.csv", "rb"))}
  12. formul_data = { element.lower():weight for element,weight in csv.reader(open("form.csv", "rb"))}
  13.  
  14. while True:
  15.     choice = int(raw_input("Element name or Formula? (1/2): "))
  16.  
  17.     if choice == 1:
  18.         elements = {}
  19.         numberOfPrompts = int(raw_input("Enter total amount of elements: "))
  20.         for i in range(numberOfPrompts):
  21.             # will prompt "Enter Element 1: " on the first iteration
  22.             userInput = raw_input("Enter Element %s: " % (i+1, ))
  23.             elements[userInput] = float(elemen_data.get(userInput.lower()))
  24.         for element in elements.keys():
  25.             weightSum = 0
  26.             for weight in elements.values():
  27.                 weightSum += weight
  28.            
  29.         print "Total weight =" ,weightSum
  30.            
  31.     if choice == 2:
  32.         print "Not ready, try a later version"
  33.         formula = raw_input("Enter formula: ")
  34.  
  35.        
  36.         upper = split_uppercase(formula)
  37.         print upper
  38.         #Pull in data from form.csv
  39.         weight1 = float(formul_data.get(element1.lower()))
  40.         weight2 = float(formul_data.get(element2.lower()))
  41.         weight3 = float(formul_data.get(element3.lower()))
  42.  
  43.        
  44.         weightSum = weight1 + weight2 + weight3
  45.         print "Total weight =", weightSum
  46.        
  47.     if choice == 0:
  48.         break
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement