এই টিউটোরিয়ালে পাইথনের বিল্ট-ইন `itertools.permutations()` ফাংশন ব্যবহার করে একটি স্ট্রিং-এর সব সম্ভাব্য পারমুটেশন (ক্রমবিন্যাস) বের করার পদ্ধতি দেখানো হলো।
প্রক্রিয়া
- `itertools` মডিউল ইম্পোর্ট করুন।
- স্ট্রিং ইনিশিয়ালাইজ করুন।
- `itertools.permutations(string)` কল করুন – এটি একটি ইটেরেটর রিটার্ন করে।
- লিস্টে কনভার্ট করুন (টাপলসহ)।
- `join()` ব্যবহার করে টাপলগুলো স্ট্রিং-এ রূপান্তর করুন।
কোড উদাহরণ
import itertools
string = "XYZ"
perm_list = list(itertools.permutations(string))
print("Permutations as tuples:")
print(perm_list)
print("\nPermutations as strings:")
for tup in perm_list:
print("".join(tup))
আউটপুট
Permutations as tuples:
[('X', 'Y', 'Z'), ('X', 'Z', 'Y'), ('Y', 'X', 'Z'), ('Y', 'Z', 'X'), ('Z', 'X', 'Y'), ('Z', 'Y', 'X')]
Permutations as strings:
XYZ
XZY
YXZ
YZX
ZXY
ZYX
n-দৈর্ঘ্যের স্ট্রিং-এর জন্য n! টি পারমুটেশন তৈরি হয়। `itertools` মডিউলটি ইফিশিয়েন্টলি এই কাজটি করে।