time complexityThu, 16 Feb 2023

def count_files(path): file_list = glob.glob(path) num_of_files = len(file_list) return num_of_files def get_xml_from_ncbi(terms): for i in terms: utils.request_search(db='nucleotide',term=i,retmax=1,xml_filename=f'/bio/practica_2/data/{i}.xml') def get_files_in_dir(directory_path): directory_path = Path(directory_path) files = [] for file in directory_path.glob('*'): if file.is_file(): files.append(str(file)) return files def get_id_list(list_of_files): id_list = [] for file in list_of_files: dict = utils.read_xml(file) id_for_list = dict['IdList'][0] id_list.append(id_for_list) return id_list def get_gb_files(list_of_id): for id in list_of_id: utils.request_fetch('nucleotide',id,'gb',f'/bio/practica_2/gb_files/{id}.gb') def rename_files_gb(list_of_gb): for file in list_of_gb: record_iter: GenBankIterator = SeqIO.parse(file, 'gb') for record in record_iter: if record.features: for feature in record.features: if feature.type == "source": name_list = feature.qualifiers["organism"] name = name_list[0] reg_white_space = r'\s' pat_white_space = re.compile(reg_white_space) name = pat_white_space.sub('_', name) reg_name = r'\/([^\/]+)$' pat_name = re.compile(reg_name) file_name = pat_name.search(file).group(1) new_file_name = os.path.dirname(file) + '/' + name + os.path.splitext(file_name)[1] os.rename(file, new_file_name)

O(n)

Questions about programming?Chat with your personal AI assistant