Best Python code snippet using avocado_python
generator
Source:generator
1#!/usr/bin/python32#-*- coding=utf-8 -*-3from mailmerge import MailMerge4from csv import DictReader5def csv_read(path, d):6 '''7 '''8 9 return DictReader(open(path, 'r'), delimiter=d)10def passport_prepare(pass_str, string_limit):11 '''12 '''13 strlim = int(string_limit)14 passport = ['','','']15 current_id = 016 # TODO: Fix that -17 if len(pass_str) > strlim:18 temp1 = pass_str[:strlim]19 l_pass = temp1.rfind(u' ')20 passport[0] = pass_str[:l_pass]21 pass_str = pass_str[l_pass:]22 if len(pass_str) > strlim:23 temp2 = pass_str[:strlim]24 l_pass = temp2.rfind(u' ')25 passport[1] = pass_str[:l_pass]26 pass_str = pass_str[l_pass:]27 if len(pass_str) > 0:28 passport[2] = pass_str29 else:30 passport[1] = pass_str31 else:32 passport[0] = pass_str33 34 return passport35def fill_form(user, template, string_limit, out_path):36 '''37 '''38 passport = passport_prepare(user['pass_seria']+' '+user['pass_number']+', вÑдан '+user['pass_wh_date']+' '+user['pass_wh'], string_limit)39 with MailMerge(template) as document:40 document.merge(41 FullName=user['secondname']+' '+user['firstname']+' '+user['thirdname'],42 SurName=user['secondname'],43 GivenName=user['firstname']+' '+user['thirdname'] if user['thirdname'] != '' else user['firstname'],44 Title=user['title'],45 OrgUnit=user['orgunit'],46 Email=user['email'],47 SNILS=user['snils'],48 ShortName=user['secondname']+' '+user['firstname'][0]+'.'+user['thirdname'][0]+'.' if user['thirdname'] != '' else user['secondname']+' '+user['firstname'][0]+'.',49 Passport_1=passport[0],50 Passport_2=passport[1],51 Passport_3=passport[2]52 )53 document.write(out_path+user['email'][:user['email'].find('@')]+".docx")54 55def clicker(users, template, string_limit, out_path):56 '''57 '''58 59 for user in users:60 fill_form(user, template, string_limit, out_path)61 print(user['email'][:user['email'].find('@')]+' done.')62def launcher():63 64 #####65 # Settings66 #####67 # Site168 input_file_s1 = './src/in_s1.csv'69 template_s1 = './templates/form_s1.docx'70 out_path_s1 = './output/s1/'71 # Site272 input_file_s2 = './src/in_s2.csv'73 template_s2_op1 = './templates/form_s2_op1.docx'74 template_s2_op2 = './templates/form_s2_op2.docx'75 out_path_s2 = './output/s2_op1/'76 out_path_s2 = './output/s2_op2/'77 # Site378 input_file_s3 = './src/in_s3.csv'79 template_s3 = './templates/form_s3.docx'80 out_path_s3 = './output/s3/'81 # CSV delimiter82 dlm = ';'83 # Passport string symbol limit on a row84 string_limit = 9885 #####86 # Run87 ####88 89 clicker(csv_read(input_file_s2, dlm), template_s2_op1, string_limit, out_path_s2_op1)90 clicker(csv_read(input_file_s2, dlm), template_s2_op2, string_limit, out_path_s2_op2)91 clicker(csv_read(input_file_s1, dlm), template_s1, string_limit, out_path_s1)92 clicker(csv_read(input_file_s3, dlm), template_s3, string_limit, out_path_s3)93if __name__ == '__main__':...
d2.py
Source:d2.py
1with open('data/d2.data') as dataStream:2 rawData = dataStream.read().splitlines()3class Record:4 def __init__(self, word_min, word_max, pass_char, pass_str):5 self.word_min = int(word_min)6 self.word_max = int(word_max)7 self.pass_char = pass_char8 self.pass_str = pass_str9 def __repr__(self):10 return "min {} max {} char {} string {} \n".format(self.word_min, self.word_max, self.pass_char, self.pass_str )11def process_data(data):12 records = []13 for d in data:14 records.append(Record(d[0:d.find('-')], 15 d[d.find('-')+1:d.find(' ')], 16 d[d.find(' ')+1:d.find(':')],17 d[d.find(':')+2:len(d)]))18 return records19def num_valid_partone(tuples):20 print("num tuples:{}".format(len(tuples)) )21 errors = 022 for r in tuples:23 occurences = r.pass_str.count(r.pass_char)24 if occurences < r.word_min:25 errors += 126 elif occurences > r.word_max:27 errors += 128 print("num errors detected:{}".format(errors))29 print("num correct: {}".format(len(tuples) - errors))30def num_invalid(tuples):31 errors=032 for rec in tuples:33 if rec.pass_str[rec.word_min - 1] == rec.pass_char:34 if rec.pass_str[rec.word_max - 1] == rec.pass_char:35 errors += 136 if rec.pass_str[rec.word_min - 1] != rec.pass_char:37 if rec.pass_str[rec.word_max - 1] != rec.pass_char:38 errors += 139 return errors40d = process_data(rawData)...
day4a.py
Source:day4a.py
1import re2pass_str = ''3pass_strings = []4valid_count = 05with open("day4.txt") as f:6 for line in f:7 if line.strip() != "":8 if pass_str == '':9 pass_str += line.strip()10 else:11 pass_str += " "12 pass_str += line.strip()13 else:14 pass_strings.append(pass_str)15 pass_str = ''16# I now have a List of passport strings with space-separated values17# print(len(pass_strings))18# patterns = ['byr:[0-9]{4,}', 'iyr:[0-9]{4,}', 'eyr:[0-9]{4,}', 'hgt:[0-9]+[a-z]+', 'hcl:#[0-9a-zA-Z]{6,}', 'ecl:[a-zA-Z]+', 'pid:[0-9]+']19patterns = ['byr:[0-9a-zA-Z#]+', 'iyr:[0-9a-zA-Z#]+', 'eyr:[0-9a-zA-Z#]+', 'hgt:[0-9a-zA-Z#]+', 'hcl:[0-9a-zA-Z#]+', 'ecl:[0-9a-zA-Z#]+', 'pid:[[0-9a-zA-Z#]+']20valid = True21for string in pass_strings:22 for pattern in patterns:23 if not re.search(pattern, string):24 valid = False 25 if valid == True:26 valid_count += 127 else:28 valid = True...
Learn to execute automation testing from scratch with LambdaTest Learning Hub. Right from setting up the prerequisites to run your first automation test, to following best practices and diving deeper into advanced test scenarios. LambdaTest Learning Hubs compile a list of step-by-step guides to help you be proficient with different test automation frameworks i.e. Selenium, Cypress, TestNG etc.
You could also refer to video tutorials over LambdaTest YouTube channel to get step by step demonstration from industry experts.
Get 100 minutes of automation test minutes FREE!!