Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import csv
- import math
- g=9.8**2
- class dinosaur:
- def __init__(self, name, leg_length, diet, stride_length, stance):
- self.name = name
- self.leg_length = leg_length
- self.diet = diet
- self.stride_length = stride_length
- self.stance = stance
- self.speed = self.getSpeed()
- def getSpeed(self):
- return ((self.stride_length / self.leg_length) -1) * math.sqrt(self.leg_length * g)
- def readCSV(file):
- reader = csv.DictReader(open(file))
- result = {}
- for row in reader:
- key = row.pop('NAME')
- result[key] = row
- return result
- def getDeets(legdiet, stridestance):
- dinos = []
- ldd = readCSV(legdiet)
- ssd = readCSV(stridestance)
- for d in ldd:
- dinos.append(dinosaur(d, float(ldd[d]['LEG_LENGTH']), ldd[d]['DIET'], float(ssd[d]['STRIDE_LENGTH']), ssd[d]['STANCE']))
- return dinos
- if __name__ == '__main__':
- dinos = sorted(getDeets("dataset1.csv", "dataset2.csv"), key=lambda x: x.speed, reverse=True)
- i = 0
- while i < len(dinos):
- if dinos[i].stance == "bipedal":
- print("%s" % dinos[i].name)
- i=i+1
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement