def main(): BK_PATH = sys.argv[1] OUTPUT_RPOS = "rpos.pl" cprint("Creating " + OUTPUT_RPOS + "...", 'b') kb_file_rpos = open(OUTPUT_RPOS, 'a') d = {"rpos": ""} dirfiles = [f for f in listdir(BK_PATH)] for file_name in dirfiles: with open(BK_PATH + file_name, newline='') as csvfile: data = csv.DictReader(csvfile) for row in data: if (row["Action"][0] == "y"): #relations clause = "rel(" + row["Entity"] + "," + row["Relation"] clause = clause + ",'" + row["Value"] + "').\n" \ if row["Relation"] == "haswikipediaurl" \ else clause + "," + row["Value"] + ").\n" if ((d['rpos'].find(clause)) == -1): cprint(clause, 'y') d['rpos'] += clause kb_file_rpos.write(d['rpos']) kb_file_rpos.close()
def test(): print("Nombres intouchables : ", end="") if not intouchable(4) and not intouchable(16) and intouchable(5) and all( not intouchable(x) for x in range(7, 125, 2)): cprint("PASS", 'blue') else: cprint("FAIL", 'red')
def test(): print("Anagram generation : ", end="") ch = "abc" anagrams = [['abc', 'acb'], ['bac', 'bca'], ['cab', 'cba']] tab = [] remplir_tab_anagrammes(tab, ch) if tab == anagrams: cprint("PASS", 'blue') else: cprint("FAIL", 'red')
def test(): print("Testing matrix transposition : ", end="") m1 = [[1, 2, 3], [4, 5, 6]] m2 = [[None for x in range(2)] for y in range(3)] ref = [[6, 3], [5, 2], [4, 1]] transpose_matrix(m1, m2) if m2 == ref: cprint("PASS", 'blue') else: cprint("FAIL", 'red')
def test(): print("Recherche de mots : ", end="") phrase = "je crois ce que je dis et je fais ce que je crois " occurences = [{ 'mot': 'je', 'occurences': 4 }, { 'mot': 'crois', 'occurences': 2 }, { 'mot': 'ce', 'occurences': 2 }, { 'mot': 'que', 'occurences': 2 }, { 'mot': 'dis', 'occurences': 1 }, { 'mot': 'et', 'occurences': 1 }, { 'mot': 'fais', 'occurences': 1 }] nb_mots = compter_mots(phrase) tab = [] # pour chaque mot for i in range(nb_mots): # trouver sa 1e occurence dans la chaine ieme_mot, pos = retourner_mot(phrase, i) # trouver l'indice de ce mot dans notre dict idex = chercher_mot(phrase, tab, ieme_mot) if idex == -1: # 1e occurence du mot: le rajouter à la liste tab.append({"mot": ieme_mot, "occurences": 1}) else: # incrémenter le compteur tab[idex]["occurences"] += 1 if tab == occurences: cprint("PASS", 'blue') else: cprint("FAIL", 'red')
query = db.select([customers_tb]).where(customers_tb.c.isEnabled == 'Yes') res = conn.execute(query) # customers = res.fetchall() # websmslogin = os.environ["WEBSMS_LOGIN"] # websmspassword = os.environ["WEBSMS_PWD"] websmslogin = os.getenv("WEBSMS_LOGIN") websmspassword = os.getenv("WEBSMS_PWD") w = Websms() w.username = websmslogin w.password = websmspassword # w.isViber = False for row in list(res): cprint("PURPLE", "here") if not row.lastsenddate or row.lastsenddate < row.deliverydate: try: w.sendSMS(row.message, row.phone) lastsenddate = dt.now().strftime("%Y-%m-%d %H:%M:%S") lastMessageId = w.getLastMessId() status = w.getLastStatus() cprint( 'GREEN', "[{}] phone: {}, message: {}, lastMessageId: {}, status: {}" .format(lastsenddate, row.phone, row.message, lastMessageId, status)) query = db.update(customers_tb).where( customers_tb.c.id == row.id).values( lastsenddate=lastsenddate,