দ্রষ্টব্য, difflib.SequenceMatcher
কেবল দীর্ঘতম মিলিত অনুষঙ্গটি সন্ধান করে, এটি প্রায়শই পছন্দ হয় না, উদাহরণস্বরূপ:
>>> a1 = "Apple"
>>> a2 = "Appel"
>>> a1 *= 50
>>> a2 *= 50
>>> SequenceMatcher(None, a1, a2).ratio()
0.012 # very low
>>> SequenceMatcher(None, a1, a2).get_matching_blocks()
[Match(a=0, b=0, size=3), Match(a=250, b=250, size=0)] # only the first block is recorded
দুটি স্ট্রিংয়ের মধ্যে মিল খুঁজে পাওয়া বায়োইনফরম্যাটিকসে পেয়ারওয়াই সিকোয়েন্স অ্যালাইনমেন্টের ধারণার সাথে নিবিড়ভাবে সম্পর্কিত। এর জন্য বায়োপীথন সহ অনেক নিবেদিত গ্রন্থাগার রয়েছে । এই উদাহরণটি সুই উইলশ অ্যালগোরিদম প্রয়োগ করে :
>>> from Bio.Align import PairwiseAligner
>>> aligner = PairwiseAligner()
>>> aligner.score(a1, a2)
200.0
>>> aligner.algorithm
'Needleman-Wunsch'
পাইপথন স্ট্যান্ডার্ড লাইব্রেরির যে কোনও অংশের তুলনায় অনেকগুলি স্কোরিং স্কিম এবং অ্যালগরিদম পাওয়া যায় বলে বায়োপাইথন বা অন্য কোনও বায়োইনফরমেটিক্স প্যাকেজ ব্যবহার করা আরও নমনীয়। এছাড়াও, আপনি যা ঘটছে তা কল্পনা করার জন্য আপনি ম্যাচের ক্রমগুলি আসলে পেতে পারেন:
>>> alignment = next(aligner.align(a1, a2))
>>> alignment.score
200.0
>>> print(alignment)
Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-Apple-
|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-|||-|-
App-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-elApp-el