3. දත්ත ව්‍යුහ (Data Structures)

පාඩම 3.2: ටපල් (Tuples)

ටපල් එකක් යනු ලැයිස්තුවකට (List) බෙහෙවින් සමාන දත්ත ව්‍යුහයකි. එයද අනුපිළිවෙලක් සහිත (ordered) දත්ත එකතුවකි. නමුත් ප්‍රධානතම වෙනස වන්නේ, ටපල් එකක් **වෙනස් කළ නොහැකි (unchangeable / immutable)** වීමයි.

එනම්, ටපල් එකක් නිර්මාණය කළ පසු, ඔබට එහි ඇති අයිතම වෙනස් කිරීමට, අලුතින් එකතු කිරීමට හෝ ඉවත් කිරීමට නොහැක.

ටපල් නිර්මාණය කරන්නේ සාමාන්‍ය වරහන් () භාවිතා කරමිනි.

# කොළඹ නගරයේ ඛණ්ඩාංක (මේවා වෙනස් නොවිය යුතු දත්ත)
colombo_coordinates = (6.9271, 79.8612)

# වර්ණ කිහිපයකින් සැදුම්ලත් ටපල් එකක්
colors = ("red", "green", "blue")

ටපල් සහ ලැයිස්තු අතර සමානකම්

ටපල් වෙනස් කළ නොහැකි වුවත්, දත්ත ලබාගැනීම සහ කියවීම අතින් ඒවා ලැයිස්තු මෙන් ක්‍රියා කරයි.

දර්ශක මගින් අයිතම ලබා ගැනීම (Accessing with Index):

print(colors[0])  # ප්‍රතිඵලය: red
print(colors[-1]) # ප්‍රතිඵලය: blue

ලූප කිරීම (Looping):

for color in colors:
    print(color)

ප්‍රධාන වෙනස: වෙනස් කළ නොහැකි බව (Immutability)

ලැයිස්තුවක මෙන් අගයන් වෙනස් කිරීමට හෝ අලුතින් එකතු කිරීමට උත්සාහ කළහොත්, Python ඔබට දෝෂ පණිවිඩයක් (Error) පෙන්වයි.

colors = ("red", "green", "blue")

# මෙම පේළිය දෝෂයක් ඇති කරයි!
# colors[0] = "yellow" 

# මෙම පේළියද දෝෂයක් ඇති කරයි!
# colors.append("yellow")

ටපල් එකක් භාවිතා කරන්නේ ඇයි?

දත්ත වෙනස් කළ නොහැකි නම්, ඒවායේ ප්‍රයෝජනය කුමක්ද?

  • දත්ත සුරක්ෂිතතාව (Data Safety): වැඩසටහන තුළදී අත්වැරදීමකින්වත් වෙනස් නොවිය යුතු දත්ත ගබඩා කිරීමට ටපල් ඉතා සුදුසුයි.
  • කාර්ය සාධනය (Performance): වෙනස් කළ නොහැකි නිසා, Python හට ටපල්, ලැයිස්තු වලට වඩා තරමක් වේගයෙන් හැසිරවිය හැක.
  • ශබ්දකෝෂ යතුරු (Dictionary Keys): පසුව අප ඉගෙන ගන්නා ශබ්දකෝෂ (Dictionaries) වල යතුරු (keys) ලෙස ටපල් භාවිතා කළ හැකි නමුත්, ලැයිස්තු භාවිතා කළ නොහැක.

සාරාංශය: List ද? Tuple ද?

  • ඔබේ දත්ත එකතුව නිතර වෙනස් කිරීමට (add, remove, change) අවශ්‍ය නම්, **ලැයිස්තුවක් (List)** භාවිතා කරන්න.
  • ඔබේ දත්ත එකතුව ස්ථාවර සහ වෙනස් නොවිය යුතු නම්, **ටපල් එකක් (Tuple)** භාවිතා කරන්න.