পাইথন ৩-এ সব স্ট্রিং ডিফল্টলি ইউনিকোড (str)। পাইথন ২-এ u'...' প্রিফিক্স দরকার ছিল।
পাইথন ৩ (বর্তমান) — প্রিফিক্স দরকার নেই
# পাইথন ৩-এ সব স্ট্রিং ইউনিকোড
a = ('亀', '犬')
print(a) # ('亀', '犬')
পাইথন ২ (লিগেসি) — u প্রিফিক্স
# Python 2.x a = (u'亀', u'犬') print(a) # (u'亀', u'犬')
বिना প্রিফিক্স (Python 2) — বাইনারি স্ট্রিং (bytes)
# Python 2.x
a = ('亀', '犬')
print(a) # ('\xe4\xba\x80', '\xe7\x8a\xac') - UTF-8 বাইট সিকোয়েন্স
সেরা অনুশীলন (Python 3)
- সাদা স্ট্রিং লিটারেল ব্যবহার করুন — এগুলো ইউনিকোড
- সোর্স ফাইলে
# -*- coding: utf-8 -*-রাখুন (পাইথন ৩-এ ডিফল্ট) - বাইটস লিটারেলের জন্য
b'...'ব্যবহার করুন
ইনকোডিং স্পেসিফাই
# ফাইল পড়ার সময়
with open('file.txt', encoding='utf-8') as f:
text = f.read()