rpalign
Usage example in Python3 shell:
>>> from rpalign import *
>>> query="KMIAFIVIALALSHTTYSQITNGNTGNPVICLGHHAVENGTSVKTLTDNHIEVVSAKELVETNHINELCPSPLKLVDGQDCDLINGALGSPGCDHLQDTTWDVFIERPTAMDTCYPFDVPDYQSLRSILASSGSLEFIAEQFTWNGVTVDGSSSACLRGGRNGFFTRLNWLTRVKNGNYGPINVTKENTGSYVRLYLWGVHHPSSDTEQTDLYKVATGRVTVSTRSDQISIIPNIGSRPRVRNQSGRISIYWTLVNPGDSIIFNSIGNLIAPRGHYKINKSTKGTVLKSDKKIGSCTSPCLTDKGSIQSDKPFQNVSRIAIGNCPKYVKQGSLMLATGMRNIPDKQTKGLFGAIAGFIENGWQGLIDGWYGFRHQNAEGTGTAADLKSTQAAIDQINGKLNRLIEKTNEKYHQIEKEFEQVEGRIQDLEKYVEDTKIDLWSYNAELLVALENQHTIDVTDSEMNKLFERVRRQLRENAEDQGNGCFEIFHQCDNNCIESIRNGTYDHNIYRDEAINNRIKINPVNLTMGYKDIILWISFSMSCFVFVALILGFVLWACKNGNIRCQICI"
>>> subject="QKQGKMIALILVALALSHTAYSQITNGTTGNPIICLGHHAVENGTSVKTLTDNHVEVVSAKELVETNHTDELCPSPLKLVDGQDCDLINGALGSPGCDRLQDTTWDVFIERPTAVDTCYPFDVPDYQSLRSILASSGSLEFIAEQFTWNGVKVDGSSSACLRGGRNSFFSRLNWLTKATNGNYGPINVTKENTGSYVRLYLWGVHHPSSDNEQTDLYKVATGRVTVSTRSDQISIVPNIGSRPRVRNQSGRISIYWTLVNPGDSIIFNSIGNLIAPRGHYKISKSTKSTVLKSDKRIGSCTSPCLTDKGSIQSDKPFQNVSRIAIGNCPKYVKQGSLMLATGMRNIPGKQAKGLFGAIAGFIENGWQGLIDGWYGFRHQNAEGTGTAADLKSTQAAIDQINGKLNRLIEKTNEKYHQIEKEFEQVEGRIQDLEKYVEDTKIDLWSYNAELLVALENQHTIDVTDSEMNKLFERVRRQLRENAEDQGNGCFEIFHQCDNNCIESIRNGTYDHNIYRDEAINNRIKINPVTLTMGYKDIILWISFSMSCFVFVALILGFVLWACQNGNIRCQICI"
>>> x = NeedlemanWunsch(query, subject)
>>> x.get_alignment()
'----KMIAFIVIALALSHTTYSQITNGNTGNPVICLGHHAVENGTSVKTLTDNHIEVVSAKELVETNHINELCPSPLKLVDGQDCDLINGALGSPGCDHLQDTTWDVFIERPTAMDTCYPFDVPDYQSLRSILASSGSLEFIAEQFTWNGVTVDGSSSACLRGGRNGFFTRLNWLTRVKNGNYGPINVTKENTGSYVRLYLWGVHHPSSDTEQTDLYKVATGRVTVSTRSDQISIIPNIGSRPRVRNQSGRISIYWTLVNPGDSIIFNSIGNLIAPRGHYKINKSTKGTVLKSDKKIGSCTSPCLTDKGSIQSDKPFQNVSRIAIGNCPKYVKQGSLMLATGMRNIPDKQTKGLFGAIAGFIENGWQGLIDGWYGFRHQNAEGTGTAADLKSTQAAIDQINGKLNRLIEKTNEKYHQIEKEFEQVEGRIQDLEKYVEDTKIDLWSYNAELLVALENQHTIDVTDSEMNKLFERVRRQLRENAEDQGNGCFEIFHQCDNNCIESIRNGTYDHNIYRDEAINNRIKINPVNLTMGYKDIILWISFSMSCFVFVALILGFVLWACKNGNIRCQICI'
>>> x.get_insertions()
[]