Advertisement
nher1625

civil_servant_data

Sep 26th, 2015
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.83 KB | None | 0 0
  1. import csv  # use the csv module
  2. import collections
  3.  
  4. f = open('dmssalaries.csv')  # ref open file as f: http://dmssalaries.herokuapp.com/salaries?employee_name=&employee_type=&agency_name=&class_code=&salaries_length=10
  5. # pass f to csv module to csv.reader to parse rows of file
  6. csv_f = csv.reader(f)
  7.  
  8. db = [x for x in csv_f]
  9.  
  10. #print len(r[0])
  11. csv_header = db[0]
  12.  
  13. agency_name, budget_entity,\
  14. pos_num, last_n, first_n, middle_n, \
  15. employee_type, full_part, class_code, \
  16. class_title, h_date, salary, hourly_salary = [ csv_header.index(i) for i in csv_header ]  
  17.  
  18. def get_all_depts():
  19.     depts = set()
  20.     for item in range(len(db)):
  21.         depts.add(db[item][agency_name])
  22.     return list(depts)
  23.  
  24. def search_by_name(first, middle, last):
  25.     matches = []
  26.  
  27.     for index in range(len(db)):
  28.         name = db[index]
  29.  
  30.         if first.lower() in name[first_n].lower():
  31.             matches.append( ( '{}'.format(name[first_n]), index) )
  32.         elif middle.lower() in name[middle_n].lower():
  33.             matches.append( ('{}'.format(name[middle_n]), index) )
  34.         elif last.lower() in name[last_n].lower():
  35.             matches.append( ('{}'.format(name[last_n]), index) )
  36.    
  37.     return matches
  38.  
  39. def taxes_pay():
  40.     for department in get_all_depts():
  41.         print 'Your Florida tax money currently pays: ' + department
  42.  
  43. target_ids = [ value for key,value in search_by_name('Marco', 'Marco', 'Marco') ] # generate array of ids for name matches
  44.  
  45. # salary = db[target_ids[num]][salary]
  46. # name = db[target_ids[num]][first_n] + db[target_ids[num]][last_n]
  47. # career = db[target_ids[num]][class_title]
  48.  
  49. for num in range(len(target_ids)):
  50.     print db[target_ids[num]][first_n], db[target_ids[num]][last_n], "makes", \
  51.           db[target_ids[num]][salary],"annually working as a", \
  52.           db[target_ids[num]][class_title]       
  53.     num += 1
  54.  
  55. print 'Length of all total entries for passed names: ', len(target_ids)
  56.  
  57. taxes_pay()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement