একটি ইউনিকোড স্ট্রিংকে বাইটের স্ট্রিং হিসাবে উপস্থাপন করাকে এনকোডিং বলা হয়। বাইটের একটি স্ট্রিংকে ইউনিকোড স্ট্রিংয়ে রূপান্তর করাকে ডিকোডিং বলা হয়। আপনি সাধারণত একটি ইউনিকোড স্ট্রিং এনকোড করেন যখনই আপনি এটি IO এর জন্য ব্যবহার করতে চান, উদাহরণস্বরূপ এটিকে নেটওয়ার্কে স্থানান্তর করুন, বা এটি একটি ডিস্ক ফাইলে সংরক্ষণ করুন৷ আপনি যখনই নেটওয়ার্ক বা ডিস্ক ফাইল থেকে স্ট্রিং ডেটা পান তখন আপনি সাধারণত বাইটের একটি স্ট্রিং ডিকোড করেন৷
প্রদত্ত এনকোডিং ব্যবহার করে একটি স্ট্রিং এনকোড করতে আপনি নিম্নলিখিতগুলি করতে পারেন:
>>>u'æøå'.encode('utf8') '\xc3\x83\xc2\xa6\xc3\x83\xc2\xb8\xc3\x83\xc2\xa5'
অ্যাস্ট্রিং ডিকোড করতে (এটি এনকোড করতে ব্যবহৃত একই এনকোডিং ব্যবহার করে), আপনাকে ডিকোড (এনকোডিং) কল করতে হবে। যেমন:
>>>'\xc3\x83\xc2\xa6\xc3\x83\xc2\xb8\xc3\x83\xc2\xa5'.decode('utf8') u'\xc3\xa6\xc3\xb8\xc3\xa5'
utf8 এনকোডিং-এর এই স্ট্রিংটি u'æøå'
এর সমতুল্য