MGMT 58600 Python Programming
The purpose of this lab is to provide more experience with pattern matching with regular expressions as well as character manipulation.
KSM had been eyeing a large acquisition of another automotive dealer that also had a major service component of the business. Within two weeks of the acquisition, the former operations manager (who was supposed to remain and aid with the acquisition transition) absconded with funds and sabotaged the computer systems and records. Law enforcement has a pretty good lead on locating the AWOL operations manager and KSM’s IT department was able to recover the vast majority of the sabotaged files; however, one glaring exception are those related to the parts ordered from one of the company’s suppliers (knowledge about the last year’s orders are in limbo). Luckily, in his haste to get out of town, the former operations manager neglected to recall that all of the orders were placed via recorded phone calls and didn’t end up deleting the audio files. Those phone messages were transcribed into text files which you believe can be processed to get the order information and amounts for the last year to get a good overview of what has been historically ordered through the supplier’s supply lines.
In this lab, you will evaluate an unknown bundle of data to extract part numbers and numbers of units, produce information about the supply line of those parts, and determine totals of the supply lines. If your program idea works, the program can be read against the hundreds of phone calls that were used to place the orders in the last year.
Write a program that:
· retrieves a bundle of data from the clipboard
· extracts all parts numbers and number of units in the orde
· part numbers appear in the form of H XXXXXXXXXXwhere 9 is a numeric digit)
· the number of units in the order can be found directly after the part number and is prefaced by # in the form #999 (where 9 is a numeric digit)
· the digit that follows the H represents our supply partner’s supply line (you can assume that the numbers after the hyphen are inconsequential and represent issues like the color of the part … we’re mainly interested in how many items have been ordered from a particular line)
· There are 10 supply lines (0-9) that we are interested in
· totals the number of units across all of the parts numbers that were extracted
· will print the totals for each of the supply lines in the form: Supply Line Designation ---> 9999 where Designation is the supply line name as converted from the supply line number (see below for conversions) and 9999 represents the total numbers of units ordered from that supply line (e.g., Supply Line Foxtrot ---> 1288).
Some general ideas about the program:
1. Your program must use Pyperclip to extract the data bundle from the Clipboard
2. Your program must co
ectly use a regular expression to match parts numbers in the retrieved text bundle and extract all of them from the bundle and also must co
ectly use a regular expression to match the number of units in the retrieved text bundle and extract all of them from the bundle
3. Must effectively/efficiently determine the area associated with the supply line based on the following table:
a. 0 Tango
. 1 Sie
c. 2 Victo
d. 3 Foxtrot
e. 4 Xray
f. 5 Hotel
g. 6 Delta
h. 7 Romeo
i. 8 India
j. 9 Echo
4. Your program must use lists to hold/process the supply line descriptions.
5. Your program must use a list to process the total counts for the supply lines.
6. Your program must use at least one function which requires at least one argument to be passed to it with something returned from it. Hint: You can pick something easy like determining the supply line description.
Program uses Pyperclip effectively
ectly constructed regular expression for part number that extracts all part numbers
ectly constructed regular expression for number of units that extracts all numbers of units
List to hold area descriptions with proper processing
List to hold totals of number of units ordered per supply line with proper processing
Proper use of function with at least one argument passed and something returned
Program executes co
ectly and effectively
Total Points Possible