#!/usr/bin/env python

from Bio.SeqIO.FastaIO import SimpleFastaParser
import sys
import argparse

parser = argparse.ArgumentParser(description='This script will rename all sequences of a multifasta with the same name with an appended number to keep them unique.')

required = parser.add_argument_group('required arguments')

required.add_argument("-i", "--input-fasta", help="Starting fasta file", action="store", required=True)
parser.add_argument("-w", "--wanted-name", help='Name to give seqs (default: "Seq")', action="store", default="Seq")
parser.add_argument("-o", "--output-fasta", help='Output fasta file (default: "Renamed.fasta").', default="Renamed.fasta")

if len(sys.argv)==1:
    parser.print_help(sys.stderr)
    sys.exit(0)

args = parser.parse_args()

n = 0

with open(args.output_fasta, "w") as output_file:

	  with open(args.input_fasta, "r") as input_file:

	  	  for header, seq in SimpleFastaParser(input_file):

	  	  	  n = n + 1
	  	  	  output_file.write(">" + str(args.wanted_name) + "_" + str(n) + "\n" + seq + "\n")
