-
Notifications
You must be signed in to change notification settings - Fork 2
/
ExperimentParser.py
27 lines (18 loc) · 1.01 KB
/
ExperimentParser.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import configparser
class ExperimentParser:
def __init__(self, args, config_path):
self.parser = configparser.ConfigParser()
self.parser.read(config_path)
self.args = args
def parse(self):
self.args["algorithms"] = self.getlist(self.parser["Default"]["algorithms"])
self.args["jaccard_tresh"] = self.getlist(self.parser["Default"]["jaccard_tresh"])
self.args["database_size"] = self.getlist(self.parser["Default"]["database_size"])
self.args["max_tree_size"] = self.getlist(self.parser["Default"]["max_tree_size"])
self.args["max_sequence_size"] = self.getlist(self.parser["Default"]["max_sequence_size"])
self.args["min_support"] = self.getlist(self.parser["Default"]["min_support"])
return self.args
def getlist(self, option, sep=',', chars=None):
"""Return a list from a ConfigParser option. By default,
split on a comma and strip whitespaces."""
return [chunk.strip(chars) for chunk in option.split(sep)]