-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathClassManager.py
49 lines (40 loc) · 1.45 KB
/
ClassManager.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
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
import os.path
import re
def areThereSpecialChars(value):
regex = re.compile('[@!#$%^&*()<>?/\|}{~:]')
if (regex.search(value) == None):
return False
else:
return True
class Manager:
def __init__(self):
self.filename = "./classes.csv"
if os.path.exists(self.filename) is False:
f = open(self.filename,"w")
f.close()
def readClasses(self):
file = open(self.filename,'r')
classes = file.readlines()
file.close()
classes = [m.strip() for m in classes]
return sorted(classes)
def addClasses(self,classes):
#TODO better to trip space recursively and check there should not be only spaces
#TODO check class already exist , word similarity
classes = classes.split(',')
writecount = 0
if len(classes) > 0:
classes = [m.strip().title() for m in classes]
filew = open(self.filename,'a')
for cls in classes:
if areThereSpecialChars(cls)==True:
continue
spccount = cls.count(' ')
tbcount = cls.count('\t')
length = len(cls)
goodletters = length-(spccount+tbcount)
if goodletters>0:
filew.write(cls+"\n")
writecount = writecount + 1
filew.close()
return writecount