செவ்வாய், 17 மார்ச், 2026

வாரம் 2: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-2)

📜 வாரம் 2: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-2) | Tholkaappiyam Nunmarabu Python Text-2

வாரம் 2: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-2)

Tholkaappiyam - Nunmarabu (Python Text-2)

முனைவர் சத்தியராஜ் தங்கச்சாமி

தமிழ் உதவிப்பேராசிரியர் & விக்கிமீடியர்,

ஸ்ரீ கிருஷ்ணா ஆதித்யா கலை மற்றும் அறிவியல் கல்லூரி, கோயம்புத்தூர் – 641042.

அறிமுகம்

முந்தைய வகுப்பில் தொல்காப்பியம் அறிமுகம், பைத்தான் அறிமுகம், பைத்தான் நிரல் எழுதும் முறை, தொல்காப்பிய நூற்பாவைப் பைத்தான் நிரலாக மாற்றும் முறை அறிந்தோம். அதில் தொல்காப்பிய நூன்மரபு முதல் இரண்டு நூற்பாக்களைப் பைத்தான் நிரலாக்க முறையில் விளக்கம் தரப்பெற்றது அல்லது அந்த நூற்பாவிற்குப் பைத்தான் நிரல் உருவாக்கும் வழிமுறை கூறப்பெற்றது எனலாம். அதன் தொடர்ச்சியாகத் தொல்காப்பிய நூற்பா 3 முதல் 7 வரையுள்ள நூற்பாக்களுக்குப் பைத்தான் நிரலாக்கம் எழுதும் வழிமுறையை இக்கட்டுரை இயம்புகின்றது.

நூற்பா 3 - குறில் எழுத்துக்கள்
அவற்றுள்,
அ இ உ
எ ஒ என்னும் அப்பால் ஐந்தும்
ஓர் அளபு இசைக்கும் குற்றெழுத்து என்ப.
வணக்கம் ஐயா, சென்றமுறைத் தாங்கள் அளித்த பயிற்சியும் விளக்கமும் எளிமையாக இருந்தன. இருப்பினும் நீண்டநாள் ஆனதால் புதிது போன்று உள்ளது.

அதற்குத்தான் பயிற்சி வேண்டும் என்கின்றேன். தொடர் பயிற்சி மட்டுமே தெளிவைத் தரும். சரி இனிவரும் நூற்பாவை விளக்கும்பொழுது நினைவூட்டுகின்றேன். கூர்ந்து கவனித்து வா. இப்பொழுது இந்த நூற்பா 3-ற்குப் பைத்தான் நிரல் எழுத முதலில் என்ன செய்ய வேண்டும். முதலில் இங்கு இந்த நூற்பாவில் என்ன கூறப்பெற்றுள்ளது எனப் பார்க்க வேண்டும் அல்லவா?

ஆம் ஐயா. இதில் குறில் எழுத்துக்களைப் பற்றிக் கூறியுள்ளார் தொல்காப்பியர்.

ஆம். அப்போ என்ன செய்ய வேண்டும்.

பட்டியல்தானே ஐயா உருவாக்க வேண்டும்.

ஆம். சரியாகச் சொன்னீர்கள். பட்டியல் உருவாக்கும் முறைக்கு என்ன பெயர் கூறுங்கள் பார்க்கலாம். அது வந்து ஐயா… ஊகூம்… பரவாயில்லை… அதற்கு மாறி (List) என்று பெயர். அதுமட்டுமல்லாமல் (), [] ஆகிய இந்தக் குறியீடுகளையும் அறிந்துகொள்ளுங்கள்.

  • (...) - இந்தக் குறியீட்டினுள் உள்ளவற்றை நீக்கவோ, மாற்றவோ, திருத்தம் செய்யவோ முடியாது.
  • [...] - இந்தக் குறியீட்டினுள் உள்ளவற்றை நீக்கவோ, மாற்றவோ, திருத்தம் செய்யவோ முடியும்.

சரி… இனி… அந்த நூற்பாவிற்கு ஒரு மாறி அமைத்து நிரல் உருவாக்குங்கள் பார்க்கலாம்.

உயிர்_குற்றெழுத்து = ['அ', 'இ', 'உ', 'எ', 'ஒ']
print(உயிர்_குற்றெழுத்து)
ஐயா, அந்த நூற்பாவில் உள்ள குறில் எழுத்துக்களின் வகைகளை விளைவாகக் காட்ட தாங்கள் கூறியது போலவே நிரல் எழுதியுள்ளேன். சரியா ஐயா.

சரியாக எழுதியுள்ளீர்கள். பாராட்டு. சரி அதில் '=' என்ற சமக் குறியீட்டிற்குப் பின்பும் முன்பும் உள்ளவற்றை எவ்வாறு புரிந்துகொள்ள வேண்டும் எனச் சொல்லுங்கள் அன்பரே.

அதுவா ஐயா… சமக் குறியீட்டிற்குப் பின்பு உள்ளவற்றை மதிப்பு (Value) என்றும் முன்பு உள்ளவற்றை அந்த மதிப்பிற்கான மாறி (List) என்றும் புரிந்துகொண்டுள்ளேன். சரிதானே ஐயா.

மிகச் சரிதான் அன்பரே. சரி இதன் விளைவு பின்வருவதுபோல் அமையும்.

விளைவு = ['அ', 'இ', 'உ', 'எ', 'ஒ']
நூற்பா 4 - நெடில் எழுத்துக்கள்

இதுபோல் அடுத்துவரும் நூற்பாவிற்கும் பட்டியல் எழுதுவோமா?

ஆ ஈ ஊ ஏ ஐ
ஓ ஔ என்னும் அப் பால் ஏழும்
ஈர் அளபு இசைக்கும் நெட்டெழுத்து என்ப.

இந்த நூற்பாவிலும் முந்தைய நூற்பாவில் கூறியதுபோல் உயிர் நெடில் எழுத்துக்களைத் தருகின்றார் தொல்காப்பியர். அதற்குரிய நிரல் வருமாறு:-

உயிர்_நெட்டெழுத்து = ['ஆ', 'ஈ', 'ஊ', 'ஏ', 'ஐ', 'ஓ', 'ஔ']
print(உயிர்_நெட்டெழுத்து)
['ஆ', 'ஈ', 'ஊ', 'ஏ', 'ஐ', 'ஓ', 'ஔ']

இந்த இரண்டு நிலையிலான கற்றலையும் இன்னொரு வகையிலும் புரிந்துகொள்க.

உயிர்_குற்றெழுத்து = tamil.utf8.kuril_letters
print(உயிர்_குற்றெழுத்து)

உயிர்_நெட்டெழுத்து = tamil.utf8.nedil_letters
print(உயிர்_நெட்டெழுத்து)

இந்த இரண்டு நிரல்களிலும் உள்ள tamil.utf8.kuril_letters, tamil.utf8.nedil_letters ஆகிய இரண்டு மதிப்புகளுக்குரிய விளைவுகளை Open-Tamil எனும் பைத்தான் அகராதியிலிருந்து வருவித்துக் கொள்ளலாம். இதனை ஏற்கனவே விளக்கியுள்ளேன். ஆகவே, மீண்டும் நினைவில் நிறுத்திக் கொள்ளுங்கள் pip install Open-Tamil எனும் தொடரைத் தந்து இயக்கிச் சேமித்துக்கொள்ள வேண்டும். சரியா.

தர்க்க நிரல் - குறில்/நெடில் கண்டறிதல்

இங்கு நாம் இன்னொரு நுட்பத்தையும் சேர்த்தே கற்றுக் கொள்வோமா? அந்த நுட்பம் என்னவென்றால், நாம் ஒரு எழுத்தைத் தந்து அது குறில் எழுத்தா அல்லது நெடில் எழுத்தா எனக் கண்டறியும் நுட்பமாகும்.

உயிர்_குற்றெழுத்து = ['அ', 'இ', 'உ', 'எ', 'ஒ']
உயிர்_நெட்டெழுத்து = ['ஆ', 'ஈ', 'ஊ', 'ஏ', 'ஐ', 'ஓ', 'ஔ']

எழுத்தறிதல் = input("எழுத்தைக் கண்டறிய ஒரு எழுத்தைத் தருக: ")

if எழுத்தறிதல் in உயிர்_குற்றெழுத்து:
    print ("சரி. இது உயிர் குறில் எழுத்தே. பாராட்டு…")
elif எழுத்தறிதல் in உயிர்_நெட்டெழுத்து:
    print ("சரி. இது உயிர் நெடில் எழுத்தே. பாராட்டு…")
else:
    print ("நீங்கள் எழுதிய எழுத்து உயிர் குறிலும் இல்லை; நெடிலும் இல்லை. மீண்டும் முயற்சிக்கவும்…")

இதுவரை நீங்கள் அறிந்ததில் இங்குப் புதியதாக உள்ள நுட்பங்கள் எவை என்று கண்டறியுங்கள் பார்க்கலாம்.

ஐயா, முந்தையதில் print என்பதைப் பார்த்துள்ளோம். இப்பொழுது புதியதாக, input, if, in, elif, else ஆகியன உள்ளன.

ஆம்… இவைதான் பைத்தான் குறிச்சொற்கள். இவைபோன்று தருக்கத்திற்கு ஏற்ப இன்னும் பல உண்டு என்பதை உணருங்கள். அவற்றைச் சூழல் வரும்பொழுது கற்றுக்கொள்ளலாம். சரி ஐயா.

மகிழ்ச்சி. இந்தக் குறிச்சொற்களைப் பற்றி முதலில் அறிவோம்.

  • input - இது பயனரிடமிருந்து தரவைப் பெறுவதற்குப் பயன்படுகின்றது.
  • if - ஒன்றை ஆய்வுசெய்ய பயன்படுகின்றது.
  • in - பயனர் தரக்கூடிய குறிப்பு, ஏற்கனவே உள்ள பட்டியலில் உள்ளதா எனக் கண்டறிய உதவுகின்றது.
  • elif - if என்பதில் தரப்பெற்ற குறிப்புத் தவறு என்றால் இன்னொரு மாறியில் உள்ள பட்டியலைச் சரிபார்த்துப் பயனர் தந்த குறிப்புச் சரியானதா என உறுதிப்படுத்த இது பயன்படும்.
  • else - if, elif ஆய்விற்குப் பின்பு பயனர் தந்த குறிப்புத் தவறு என்றால். இந்தக் குறிச்சொல்மூலம் அதனைத் தெரிவிக்க உதவுகின்றது.

இவை போன்றவற்றைப் புரிந்துகொண்டால் பைத்தானில் சும்மா துள்ளி விளையாடலாம். இனிவரும் நூற்பா 5, 6, 7 ஆகியவை விளக்கங்கள் மட்டுமே. ஆகையால் அவற்றைப் பைத்தான் நிரலாக எழுதிப் பார்க்கும் முயற்சியை விடுவோம்.

நூற்பா 5, 6, 7 - மாத்திரை
மூ அளபு இசைத்தல் ஓர் எழுத்து இன்றே. (நூற்பா 5)

நீட்டம் வேண்டின் அவ்வளபுடைய
கூட்டி எழூஉதல் என்மனார் புலவர். (நூற்பா 6)

கண் இமை நொடியென அவ்வே மாத்திரை
நுண்ணிதின் உணர்ந்தோர் கண்ட ஆறே. (நூற்பா 7)
மாத்திரை = ['கால் மாத்திரை', 'அரை மாத்திரை', 'ஒரு மாத்திரை', 'இரண்டு மாத்திரை']
print(மாத்திரை)
['கால் மாத்திரை', 'அரை மாத்திரை', 'ஒரு மாத்திரை', 'இரண்டு மாத்திரை']
கால்_மாத்திரை = ['போன்ம்']
print('கால் மாத்திரை அளவு ஒலிக்கக் கூடிய சொல் : ', கால்_மாத்திரை)
கால் மாத்திரை அளவு ஒலிக்கக் கூடிய சொல் : ['போன்ம்']
அரை_மாத்திரை = ['க்', 'ங்', 'ச்', 'ஞ்', 'ட்', 'ண்', 'த்', 'ந்', 'ப்', 'ம்', 'ய்', 'ர்', 'ல்', 'வ்', 'ழ்', 'ள்', 'ற்', 'ன்']
print('அரை மாத்திரை அளவு ஒலிக்கக் கூடிய எழுத்துக்கள் : ', அரை_மாத்திரை)
அரை மாத்திரை அளவு ஒலிக்கக் கூடிய எழுத்துக்கள் : ['க்', 'ங்', 'ச்', 'ஞ்', 'ட்', 'ண்', 'த்', 'ந்', 'ப்', 'ம்', 'ய்', 'ர்', 'ல்', 'வ்', 'ழ்', 'ள்', 'ற்', 'ன்']
ஒரு_மாத்திரை = ['அ', 'இ', 'உ', 'எ', 'ஒ']
print('ஒரு மாத்திரை அளவு ஒலிக்கக் கூடிய எழுத்துக்கள் : ', ஒரு_மாத்திரை)
ஒரு மாத்திரை அளவு ஒலிக்கக் கூடிய எழுத்துக்கள் : ['அ', 'இ', 'உ', 'எ', 'ஒ']
இரண்டு_மாத்திரை = ['ஆ', 'ஈ', 'ஊ', 'ஏ', 'ஓ', 'ஐ', 'ஔ']
print('இரண்டு மாத்திரை அளவு ஒலிக்கக் கூடிய எழுத்துக்கள் : ', இரண்டு_மாத்திரை)
இரண்டு மாத்திரை அளவு ஒலிக்கக் கூடிய எழுத்துக்கள் : ['ஆ', 'ஈ', 'ஊ', 'ஏ', 'ஓ', 'ஐ', 'ஔ']
முடிவுரை

இதுவரை விளக்கப்பெற்ற கருத்துக்களின் அடிப்படையில் தொல்காப்பியம் பைத்தான் நிரலாக்கமாக எழுதி இயக்கிப் பார்க்க எளிமையானது என்ற நம்பிக்கையை அளித்திருக்குமல்லவா. இது ஒரு தொடர் ஓட்டமே. அதுமட்டுமின்றி, input, if, in, elif, else ஆகிய புதிய பைத்தான் குறிச்சொற்களையும் அறிந்துகொண்டோம். இதன் தொடர்ச்சியை அடுத்த இதழில் அறிவோம்.

சரி இந்த வகுப்பை இத்துடன் முடித்துக் கொள்வோம். பிற குறிப்புகளை அடுத்துவரும் பாடவேளையில் அறிந்துகொள்வோமா?
துணைநின்றவை
📺 காணொலி விரிவுரையைப் பாருங்கள்
இரண்டாம் வார முழு விளக்கவுரை (காணொலி நேரம்: 28:45)

கருத்துகள் இல்லை:

கருத்துரையிடுக

உங்கள் கருத்துகள் வரவேற்கப்படுகின்றன

வாரம் 8: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-8)

📜 வாரம் 8: தொல்காப்பியம் - நூன்மரபு (பைத்தான்வழி உரை-8) | Tolkappiyam Nunmarabu Python Text-8 ...