Python脚本:常用模块2023-09-16

2023-09-15  本文已影响0人  土雕艺术家

创建新文件夹

def mkdir(newdir_anme):
    current_dir=os.getcwd()
    newdir_Path=current_dir+'/'+newdir_anme
    if not os.path.exists(newdir_Path):
        os.makedirs(newdir_Path)
    else:
        print('directory already exists : {}'.format(newdir_Path))
        exit()
    return newdir_Path

获取输入文件每一行的list

def get_file_list(infilename):
    infile = open(infilename, "r")
    inlines_list = infile.readlines()
    infile.close()
    return inlines_list

获取指定文件夹下文件列表,并返回全路径list

def get_dir_file_list(input_dir):
    file_path_list=[]
    for filename in os.listdir(input_dir):
        file_path_list.append(input_dir+'/'+filename)
    return file_path_list

输出fasta格式(序列不换行)

def output_fasta(sequence_dict,seqid_list,output_fas_dir,fasta_name):
    output_fas = open("{0}/{1}.fasta".format(output_fas_dir,fasta_name), 'a+')
    for seqid in seqid_list:
        try:
            seq=sequence_dict[seqid].seq
            idline='>'+seqid
            print(idline, file=output_fas)
            print(str(seq), file=output_fas)
        except:
               print("Error: "+str(seqid))
    output_fas.close()

实时输出csv表格内容

#output csv columns
output_csv = open("{}_SRA.csv".format(output_name), 'w+')
columns_str = ','.join(columns_list])
print(columns_str , file=output_csv, flush=True)
#循环中输出每一行的内容
row_str=','.join(output_list)
print(output_csv_row, file=output_csv, flush=True)

output_csv.close()
上一篇下一篇

猜你喜欢

热点阅读