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

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

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

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

Tolkappiyam - Nunmarabu (Python Text-5)

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

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

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

அறிமுகம்

முந்தைய வகுப்பின் தொடர்ச்சியாக இந்தப் பாடம் அமைகின்றது. இதில் தொல்காப்பிய நூன்மரபு 10 முதல் 16 வரைக்கும் உள்ள நூற்பாக்களை எடுத்துக்கொண்டு விளக்கப்படுகின்றது. இந்த விளக்கத்தில் செய்யறிவுக் கருவியின் (AI Tool) பயன்பாடும் அதன்மூலம் நிரல் எழுதி இயக்கும் முறையும் அறிமுகம் செய்யப்படுகின்றது.

செய்யறிவுக் கருவியின் எதிர்காலம்
அன்ப! பைத்தான் நுட்பங்கள் ஒவ்வொன்றாக விளக்கி வந்த முந்தைய உரைகளிலிருந்து இந்த உரை சற்று மாறுபட்டதாக அமைகின்றது. அந்த நான்கு உரைகளில் பைத்தானின் அடிப்படைகளை அறிந்திருப்போம் அல்லவா?
ஆமாம் ஐயா.

இனித் தற்பொழுது உருவாகியிருக்கும் செய்யறிவுக் கருவியின் பயன்பாட்டையும் நாம் உள்வாங்கிக் கொண்டு கற்கும்பொழுது நம் கற்றல் சமகாலப் புரிதலோடு சிறந்து விளங்குமல்லவா? ஆகையால்தான் செய்யறிவு நுட்பத்தோடு இணைத்து இனி அறிவோம். அது பைத்தான் எழுதும் காலத்தை வீண் செய்யும் முறையிலிருந்து மாறி, இன்னும் விரைவாகக் கற்றலை மேம்படுத்திக் கொள்ளலாம். செய்யறிவு நுட்பம் தற்காலத்தின் தவிர்க்க முடியாத பயன்பாடாகும். இதன்மூலம் பல வேலைகளை எளிதாகச் செய்துவிட முடியும். அது பைத்தான் நிரல் எழுதுவதிலும் இன்னும் சிறப்புடன் விளங்குகின்றது. ஐந்து மணிநேரங்கள் செலவுசெய்து உருவாக்கும் நிரல் எழுதும் திறனை, நொடிப்பொழுதில் உருவாக்கித் தந்துவிடுகின்றது. இதில் இன்னொரு நுட்பமும் உண்டு. அது எதிர்கால நுட்பத்துறையாகவும் வளரவும் வாய்ப்பிருக்கின்றது என்கின்றனர் வல்லுநர்கள். அது தனித்துறையாகவும் உருவாகக் காத்திருக்கின்றது என்பது குறிப்பிடத்தக்கது. இது வினவல் மென்பொறியாளர் (Prompt Engineering) என்பதாகும்.

நூன்மரபு நூற்பாக்கள் 10-16 - அறிமுகம்

தொல்காப்பிய எழுத்ததிகார நூன்மரபு நூற்பாக்கள் 10 முதல் 16 வரை தமிழ் எழுத்துகளின் இயல்புகளை விளக்குகின்றன. அவை;

10 உயிர்மெய் எழுத்துக்கள் மெய்யோடு இணைந்தாலும், உயிரின் இயல்பு மாறாமல் உயிரின் மாத்திரையே அளவாகக் கருதப்படுகிறது.
11 தனிமெய்களின் அளவு அரை மாத்திரையாகும்.
12 சார்பெழுத்துக்களும் அரை மாத்திரையில் நிற்கின்றன.
13 மகர மெய் அரை மாத்திரையில் குறுகி; பிற எழுத்துக்களின் ஒலியில் சிறுபான்மையாகத் தெரியும்.
14 புள்ளியுடன் குறுகிய மகரம் பகரத்திற்கு வடிவம் அளிக்கிறது.
15 தனிமெய்கள் புள்ளியுடன் நிற்கும்; ஆனால் உயிர்மெய்கள் புள்ளியின்றி நிற்கும்.
16 எகரம், ஒகரம் புள்ளியுடன் நிற்கும்; அதே நேரத்தில் ஏகாரம், ஓகாரம் புள்ளியின்றி நிற்கும்.

இவை தமிழ் எழுத்துக்களின் ஒலி, வடிவ வேறுபாடுகளைத் தெளிவாக்குகின்றன. அந்த நூற்பாக்கள் வருமாறு:-

மெய்யோ டியையினு முயிரிய றிரியா. (தொல். எழுத்து. நூன். 10)

மெய்ய தளபே யரையென மொழிப. (தொல். எழுத்து. நூன். 11)

அவ்விய னிலையு மேனை மூன்றே. (தொல். எழுத்து. நூன். 12)

அரையளபு குறுகன் மகர முடைத்தே
யிசையிட னருகுந் தெரியுங் காலை. (தொல். எழுத்து. நூன். 13)

உட்பெறு புள்ளி யுருவா கும்மே. (தொல். எழுத்து. நூன். 14)

மெய்யி னியற்கை புள்ளியொடு நிலையல். (தொல். எழுத்து. நூன். 15)

எகர வொகரத் தியற்கையு மற்றே. (தொல். எழுத்து. நூன். 15)

இந்த நூற்பாக்களில் சொல்லப்பெற்ற கருத்தியல்களைச் செய்யறிவுக் கருவியில் கட்டளையாகத் (Prompt) தரும்பொழுது நமக்குப் பைத்தான் நிரலை அதுவே அழகாக எழுதிக் கொடுத்துவிடும். அதனை கோலேப் எனும் இணைய முனையகத்தில் இயக்கி ஆய்வு செய்யலாம். அதற்கு முன்பு செய்யறிவுக் கருவியின் பயன்பாட்டினை முதலில் அறிவோம்.

தீப்சீக் (DeepSeek) செய்யறிவுக் கருவியின் பயன்பாடு

DeepSeek AI

தீப்சீக் (DeepSeek) கருவி பிற செய்யறிவுக் கருவிகளைக் காட்டிலும் தனித்துவமானவையென வல்லுநர்கள் கூறியுள்ளனர் [14]. செய்யறிவுக் கருவிகளில் மெட்டா ஏஐ, சாட்சிபிடி ஏஐ, செமினி ஏஐ, கிளாடு ஏஐ போன்ற கருவிகள் தங்களுக்கெனச் சில சிறப்புகளைக் கொண்டிருந்தாலும், தீப்சீக் கருவி மிகவும் துல்லியமான, விரிவான தரவுப் பகுப்பாய்வு, முன்கணிப்பு வசதிகளை வழங்குகிறது. இது பலதரப்பட்ட தரவுகளை ஒருங்கிணைத்து, உயர்நிலைப் பகுப்பாய்வு, முடிவெடுக்கும் செயல்முறைகளை மேம்படுத்துகிறது. மேலும், இந்தக் கருவி பயனர் நட்பு இடைமுகத்தைக் கொண்டுள்ளது, இது பயனர்களுக்கு எளிதாகப் பயன்படுத்தும் வசதியை வழங்குகிறது. இதன் மூலம், இக்கருவி வணிக, ஆராய்ச்சி, கல்வித் துறைகளில் பெரும் தாக்கத்தை ஏற்படுத்தும் எனக் கணித்துள்ளனர். ஏனெனில் இதன் மூலநிரல் கட்டற்ற உரிமத்தில் (Open Source) கிடைக்கின்றதென்பது குறிப்பிடத்தக்கது [15].

இந்த தீப்சீக் கருவியிடம் மேலே கூறிய தொல்காப்பிய எழுத்ததிகார நூன்மரபு நூற்பாக்கள், அதன் உரைகள் ஆகியவற்றைத் தந்து ஒரு பைத்தான் நிரல் எழுதித் தரவும் என்று கேட்கும்பொழுது, பின்வரும் நிரலினைத் தருகின்றது.

DeepSeek AI - உருவாக்கிய பைத்தான் நிரல்
# தமிழ் எழுத்து வடிவங்கள் மற்றும் மாத்திரைகள்பற்றிய தகவல்களை அச்சிடும் பைத்தான் நிரல்

def print_tamil_letters_info():
    # நூற்பா 10: உயிர்மெய்க்கு அளபு
    print("நூற்பா 10: உயிர்மெய்க்கு அளபு")
    print("மெய்யோடு இயையினும் உயிர் இயல் திரியா.")
    print("உயிர்மெய் எழுத்துகள்: க, கா, கி, கீ, கு, கூ, கெ, கே, கை, கொ, கோ, கௌ")
    print("இவை உயிர் மற்றும் மெய் எழுத்துகளின் கூட்டு வடிவங்கள்.")
    print()

    # நூற்பா 11: தனிமெய்க்கு அளபு
    print("நூற்பா 11: தனிமெய்க்கு அளபு")
    print("மெய்யது அளபே அரை என மொழிப.")
    print("தனிமெய் எழுத்துகள்: க், ங், ச், ஞ், ட், ண், த், ந், ப், ம், ய், ர், ல், வ், ழ், ள், ற், ன்")
    print("இவை அரை மாத்திரை கொண்ட தனிமெய் எழுத்துகள்.")
    print()

    # நூற்பா 12: சார்பெழுத்துகளுக்கு அளபு
    print("நூற்பா 12: சார்பெழுத்துகளுக்கு அளபு")
    print("அவ் இயல் நிலையும் ஏனை மூன்றே.")
    print("சார்பெழுத்துகள்: கேண்மியா, நாகு, எஃகு")
    print("இவை சார்பெழுத்துகள் மற்றும் அவற்றின் மாத்திரைகள்.")
    print()

    # நூற்பா 13: மகரத்தின் மாத்திரை சுருக்கம்
    print("நூற்பா 13: மகரத்தின் மாத்திரை சுருக்கம்")
    print("அரை அளபு குறுகல் மகரம் உடைத்தே.")
    print("மகர எழுத்து (ம்) சில சந்தர்ப்பங்களில் அரை மாத்திரையாகக் குறுகும்.")
    print("உதாரணம்: போன்ம், வரும்வண்ணக்கன்")
    print()

    # நூற்பா 14: புள்ளியின் வடிவ வேற்றுமை
    print("நூற்பா 14: புள்ளியின் வடிவ வேற்றுமை")
    print("உள் பெறு புள்ளி உரு ஆகும்மே.")
    print("மகரம் (ம்) மற்றும் பகரம் (ப்) ஆகியவற்றின் புள்ளி வடிவ வேற்றுமை.")
    print("உதாரணம்: ம, ப")
    print()

    # நூற்பா 15: தனிமெய் எழுத்துகளின் இயற்கை
    print("நூற்பா 15: தனிமெய் எழுத்துகளின் இயற்கை")
    print("மெய்யின் இயற்கை புள்ளியொடு நிலையல்.")
    print("தனிமெய் எழுத்துகள் புள்ளியுடன் நிற்கும்.")
    print("உதாரணம்: க், ங், ச், ஞ், ட், ண், த், ந், ப், ம், ய், ர், ல், வ், ழ், ள், ற், ன்")
    print()

    # நூற்பா 16: எகர ஒகர எழுத்துகளின் இயற்கை
    print("நூற்பா 16: எகர ஒகர எழுத்துகளின் இயற்கை")
    print("எகர ஒகரத்து இயற்கையும் அற்றே.")
    print("எகரம் (ெ) மற்றும் ஒகரம் (ொ) ஆகியவற்றின் இயல்பு.")
    print("உதாரணம்: எ், ஒ்")
    print()

# நிரலை இயக்குதல்
print_tamil_letters_info()
இந்த நிரல் சரியாக இயங்குகின்றதா அன்பா!
ஆம் ஐயா… மிக்க மகிழ்ச்சி. இதன்முடிவினையும் பாருங்கள்.
நூற்பா 10: உயிர்மெய்க்கு அளபு
மெய்யோடு இயையினும் உயிர் இயல் திரியா.
உயிர்மெய் எழுத்துகள்: க, கா, கி, கீ, கு, கூ, கெ, கே, கை, கொ, கோ, கௌ
இவை உயிர் மற்றும் மெய் எழுத்துகளின் கூட்டு வடிவங்கள்.

நூற்பா 11: தனிமெய்க்கு அளபு
மெய்யது அளபே அரை என மொழிப.
தனிமெய் எழுத்துகள்: க், ங், ச், ஞ், ட், ண், த், ந், ப், ம், ய், ர், ல், வ், ழ், ள், ற், ன்
இவை அரை மாத்திரை கொண்ட தனிமெய் எழுத்துகள்.
ஆ! அருமை ஐயா… இதற்குரிய நிரலை என்னுடைய கித்துப்பில் [6] தருகின்றேன்; இதனை நீயும் இயக்கிப் பார் அன்பா… சரி ஐயா…
def - செயல்பாடு (Function) அறிமுகம்
சரி அன்பா! இந்த நிரலில் எது உனக்குப் புதுமையாகத் தெரிகின்றது எனக் கூறுங்கள் பார்ப்போம்.
ஐயா, நிரலின் தொடக்கத்தில் def print_tamil_letters_info(): என வந்திருக்கின்றது அல்லவா? அதுதான் புதுமையாக நான் பார்க்கின்றேன் ஐயா… மற்றவை முந்தைய வகுப்பில் நாம் கற்றவையாகவே உள்ளது ஐயா…
சரியாகக் கூறினீர்கள்… பாராட்டு…

def என்பது பைத்தான் மொழியில் ஒரு செயல்பாட்டை வரையறுக்கப் பயன்படும் முக்கியமான குறிச்சொல் (keyword) ஆகும். இதனை அகராதி எனவும் அழைப்பர். இதன் மூலம் ஒரு செயல்பாட்டை (function) உருவாக்கலாம்; அதற்குப் பெயரிடலாம்; அதன் உள்ளே தேவையான குறியீடுகளை எழுதலாம்.

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

அமைப்பு:

def function_name(parameters):
    # செயல்பாட்டின் உள்ளடக்கம்
    # இங்கே தேவையான குறியீடுகளை எழுதலாம்
    return result # (விரும்பினால்)

இதை நன்கு உற்றுக் கவனியுங்கள்.

இப்பொழுது புரிந்தது ஐயா…
முடிவு
சரி அன்ப! இந்த வகுப்பை இத்துடன் முடித்துக் கொள்வோமா. அடுத்துவரும் பாடவேளையில் அதே நூற்பாக் குறிப்புகளை வைத்து விளையாட்டு நிரல் எழுதச் சொல்லும் கட்டளை நுட்பத்தை அறிந்துகொள்வோமா? சரி ஐயா. மிக்க நன்றி!
துணைநின்றவை
📺 காணொலி விரிவுரையைப் பாருங்கள்
ஐந்தாம் வார முழு விளக்கவுரை (காணொலி நேரம்: 42:30)

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

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

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

Tolkappiyam - Nunmarabu (Python Text-4)

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

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

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

அறிமுகம்

முந்தைய வகுப்பில் பைத்தான் அடிப்படையிலான உரைத் தொடர்ச்சியை இப்பாடம் முன்வைக்கின்றது. இதில் தொல்காப்பிய நூற்பா 9-ற்கு ஆணைத்தொடர் (Algorithm) உருவாக்கிப் பைத்தான் நிரல் எழுதும் வழிமுறை இடம்பெற்றுள்ளது.

மெய் எழுத்தினை நிரலாக எழுதும் முயற்சி

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

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

மிக்க மகிழ்ச்சி. அதனை வைத்தே இனிவரும் நூற்பா 9-ற்கும் நிரல் எழுதிப் பழகலாம். அந்த நூற்பா வருமாறு:-

நூற்பா 9 - மெய் எழுத்துக்கள்
னகர இறுவாய்ப்
பதினெண் எழுத்தும் மெய்யென மொழிப (நூற்பா 9)

இந்த நூற்பாவில் சொல்லப்பெற்ற கருத்தியலுக்கு எந்தெந்த தன்மைகளில் விளக்கலாமென ஒரு ஆணைத்தொடர் (Algorithm) எழுத வேண்டும். தொல்காப்பிய எழுத்ததிகார நூன்மரபு 9ஆம் நூற்பாவிற்கு ஒரு ஆணைத்தொடர் உருவாக்குவோமா?

சரி ஐயா. அதில் கூறப்பட்டுள்ள செய்திகள் என்ன? ன எனும் எழுத்துவரை பதினெட்டு எழுத்துக்கள் உள்ளன. அவை மெய் எழுத்துக்கள் என்று தொல்காப்பியர் கூறுகின்றார்.

அப்படி என்றால் பின்வருமாறு படிநிலை ஆணைத் தொடர்கள் எழுத வேண்டும்.

நூற்பா 9 - ஆணைத்தொடர் படிநிலைகள்
படிநிலை - 1: முதலில் தமிழ்மொழியைக் கணினி முறைக்குப் புரியும் வகையில் எழுத வேண்டும் என்றால், முதலில் அதற்குரிய ஓபன் தமிழ் அகராதியை நிறுவ வேண்டும்.
!pip install Open-Tamil
படிநிலை - 2: நிறுவியபின்பு ஓபன் தமிழ் அகராதியை உள்ளே வருவிக்க வேண்டும்.
import tamil
படிநிலை - 3: அடுத்து நூற்பாவில் சொல்லப்பெற்ற மெய் எழுத்துக்களைப் பட்டியலாக உருவாக்க 'மெய்_எழுத்து' எனும் மாறி உருவாக்க வேண்டும்.
மெய்_எழுத்து = ['க்', 'ங்', 'ச்', 'ஞ்', 'ட்', 'ண்', 'த்', 'ந்', 'ப்', 'ம்', 'ய்', 'ர்', 'ல்', 'வ்', 'ழ்', 'ள்', 'ற்', 'ன்']
படிநிலை - 4: அதனை விளைவாகக் காட்டுகின்றதா என எழுதி ஆய்வுசெய்ய வேண்டும்.
print(மெய்_எழுத்து)
படிநிலை - 5: மெய் எழுத்துக்களை வல்லினம், மெல்லினம், இடையினம் ஆகியவற்றைப் பட்டியல்களாகத் தனித்தனி மாறிகளில் 'மெய்_வல்லினம்', 'மெய்_மெல்லினம்', 'மெய்_இடையினம்' என எழுதிக்கொள்ள வேண்டும்.
மெய்_வல்லினம் = ['க்', 'ச்', 'ட்', 'த்', 'ப்', 'ற்']
மெய்_மெல்லினம் = ['ங்', 'ஞ்', 'ண்', 'ந்', 'ம்', 'ன்']
மெய்_இடையினம் = ['ய்', 'ர்', 'ல்', 'வ்', 'ழ்', 'ள்']
படிநிலை - 6: இவற்றை எல்லாம் ஆய்வுசெய்து பார்க்க ஒரு எழுத்தைப் பெறும் input எனும் குறியீட்டுச் சொல் தந்து, 'எழுத்தறிதல்' எனும் மாறியில் எழுத வேண்டும்.
எழுத்தறிதல் = input("எழுத்தைக் கண்டறிய ஒரு எழுத்தைத் தருக: ")
படிநிலை - 7: அதன்பிறகு if எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய வேண்டும்.
if எழுத்தறிதல் in மெய்_வல்லினம்:
படிநிலை - 8: எழுத்தறிதல் எனும் மாறியில் வாங்கிய எழுத்து மெய்_வல்லினமாக இருந்தால் பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
print("சரி. இது மெய் வல்லின எழுத்தே. பாராட்டு…")
படிநிலை - 9: வல்லின எழுத்து இல்லை என்றால் அதன்பிறகு elif எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய வேண்டும்.
elif எழுத்தறிதல் in மெய்_மெல்லினம்:
படிநிலை - 10: வல்லின எழுத்து இல்லை என்றால் எழுத்தறிதல் எனும் மாறியில் வாங்கிய எழுத்து மெய்_மெல்லினமாக இருந்தால் பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
print("சரி. இது மெய் மெல்லின எழுத்தே. பாராட்டு…")
படிநிலை - 11: மெல்லின எழுத்து இல்லை என்றால் அதன்பிறகு elif எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய வேண்டும்.
elif எழுத்தறிதல் in மெய்_இடையினம்:
படிநிலை - 12: மெல்லின எழுத்து இல்லை என்றால் எழுத்தறிதல் எனும் மாறியில் வாங்கிய எழுத்து மெய்_இடையினமாக இருந்தால் பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
print("சரி. இது மெய் இடையின எழுத்தே. பாராட்டு…")
படிநிலை - 13: மேற்கூறிய எழுத்து எதுவுமே இல்லை என்றால் அதன்பிறகு else எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
else:
print("நீங்கள் எழுதிய எழுத்து மெய் வல்லினமும் இல்லை; மெல்லினமும் இல்லை, இடையினமும் இல்லை. மீண்டும் முயற்சிக்கவும்…")
முழுமையான பைத்தான் நிரல்

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

!pip install Open-Tamil

import tamil

மெய்_எழுத்து = ['க்', 'ங்', 'ச்', 'ஞ்', 'ட்', 'ண்', 'த்', 'ந்', 'ப்', 'ம்', 'ய்', 'ர்', 'ல்', 'வ்', 'ழ்', 'ள்', 'ற்', 'ன்']
print(மெய்_எழுத்து)

மெய்_வல்லினம் = ['க்', 'ச்', 'ட்', 'த்', 'ப்', 'ற்']
மெய்_மெல்லினம் = ['ங்', 'ஞ்', 'ண்', 'ந்', 'ம்', 'ன்']
மெய்_இடையினம் = ['ய்', 'ர்', 'ல்', 'வ்', 'ழ்', 'ள்']

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

if எழுத்தறிதல் in மெய்_வல்லினம்:
    print("சரி. இது மெய் வல்லின எழுத்தே. பாராட்டு…")
elif எழுத்தறிதல் in மெய்_மெல்லினம்:
    print("சரி. இது மெய் மெல்லின எழுத்தே. பாராட்டு…")
elif எழுத்தறிதல் in மெய்_இடையினம்:
    print("சரி. இது மெய் இடையின எழுத்தே. பாராட்டு…")
else:
    print("நீங்கள் எழுதிய எழுத்து மெய் வல்லினமும் இல்லை; மெல்லினமும் இல்லை, இடையினமும் இல்லை. மீண்டும் முயற்சிக்கவும்…")
மாதிரி விளைவு:
['க்', 'ங்', 'ச்', 'ஞ்', 'ட்', 'ண்', 'த்', 'ந்', 'ப்', 'ம்', 'ய்', 'ர்', 'ல்', 'வ்', 'ழ்', 'ள்', 'ற்', 'ன்']
எழுத்தைக் கண்டறிய ஒரு எழுத்தைத் தருக: க்
சரி. இது மெய் வல்லின எழுத்தே. பாராட்டு…
சரி அன்ப! இந்த வகுப்பை இத்துடன் முடித்துக் கொள்வோமா. பிற குறிப்புகளை அடுத்துவரும் பாடவேளையில் அறிந்துகொள்வோமா? சரி ஐயா. மிக்க நன்றி!
முடிவுரை

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

துணைநின்றவை
📺 காணொலி விரிவுரையைப் பாருங்கள்
நான்காம் வார முழு விளக்கவுரை (காணொலி நேரம்: 38:15)

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

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

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

Tholkaappiyam - Nunmarabu (Python Text-3)

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

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

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

அறிமுகம்

முந்தைய வகுப்பில் தொல்காப்பியம் அறிமுகம், பைத்தான் அறிமுகம், பைத்தான் நிரல் எழுதும் முறை, தொல்காப்பிய நூற்பாவைப் பைத்தான் நிரலாக மாற்றும் முறைமைகளை அறிந்தோம். அவை தொல்காப்பிய நூன்மரபு முதல் ஏழு நூற்பாக்களுக்குப் பைத்தான் நிரலாக்கமுறையில் விளக்கம் தரப்பெற்றதாகவும் பைத்தான் நிரல் உருவாக்கும் வழிமுறைகளை விளக்குவதாகவும் அமைந்தன. அதன் தொடர்ச்சியாகத் தொல்காப்பிய நூற்பா 8-ற்கு ஆணைத்தொடர் (Algorithm) உருவாக்கிப் பைத்தான் நிரல் எழுதும் வழிமுறையை இப்பாடம் இயம்புகின்றது.

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

மிக்க மகிழ்ச்சி. அதனை வைத்தே இனிவரும் நூற்பா 8-ற்கும் நிரல் எழுதிப் பழகலாம்.

நூற்பா 8 - உயிர் எழுத்துக்கள்
ஔகார இறுவாய்ப்
பன்னீர் எழுத்தும் உயிர் என மொழிப. (நூற்பா 8)

இந்த நூற்பாவில் சொல்லப்பெற்ற கருத்தியலுக்கு எந்தெந்த தன்மைகளில் விளக்கலாமென ஒரு வரைவை உருவாக்க வேண்டும். அதாவது ஒரு குழந்தைக்குக் கற்றுக் கொடுப்பதுபோல் அதனை எடுத்துச் சொல்ல வேண்டும். அதற்கு நாம் முதலில் ஆணைத்தொடர் (Algorithm) எழுதும் பழக்கத்தை ஏற்படுத்திக்கொள்ள வேண்டும்.

ஆணைத்தொடர் என்றால் என்ன ஐயா. கொஞ்சம் விளக்குங்கள்.
ஆணைத்தொடர் (Algorithm) - ஓர் அறிமுகம்

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

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

இப்பொழுது புரிந்துகொண்டாயா?
புரிந்த மாதிரியும் புரியாத மாதிரியும் உள்ளது ஐயா.

அது பயிற்சி செய்யச்செய்ய தானாகப் புரிய ஆரம்பித்துவிடும். எனவே, அவற்றின் பயன்பாட்டை முதலில் தெரிந்து கொள்வாய் அன்ப!

சரி ஐயா.
ஆணைத்தொடர்களின் பயன்பாடு

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

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

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

சரி, மேற்கண்ட தொல்காப்பிய எழுத்ததிகார நூன்மரபு 8ஆம் நூற்பாவிற்கு ஒரு ஆணைத்தொடர் உருவாக்குவோமா? சரி ஐயா.
நூற்பா 8 - ஆணைத்தொடர் படிநிலைகள்

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

படிநிலை - 1: முதலில் தமிழ்மொழியைக் கணினி முறைக்குப் புரியும் வகையில் எழுத வேண்டும் என்றால், முதலில் அதற்குரிய ஓபன் தமிழ் அகராதியை நிறுவ வேண்டும்.
!pip install Open-Tamil
படிநிலை - 2: நிறுவிய பின்பு ஓபன் தமிழ் அகராதியை உள்ளே வருவிக்க வேண்டும்.
import tamil
படிநிலை - 3: அடுத்து நூற்பாவில் சொல்லப்பெற்ற உயிர் எழுத்துக்களைப் பட்டியலாக உருவாக்க 'உயிர்_எழுத்து' எனும் மாறி உருவாக்க வேண்டும்.
உயிர்_எழுத்து = ['அ', 'ஆ', 'இ', 'ஈ', 'உ', 'ஊ', 'எ', 'ஏ', 'ஐ', 'ஒ', 'ஓ', 'ஔ']
படிநிலை - 4: அதனை விளைவாகக் காட்டுகின்றதா என எழுதி ஆய்வுசெய்ய வேண்டும்.
print(உயிர்_எழுத்து)
படிநிலை - 5: ஏற்கனவே உயிர் எழுத்தின் குறில், நெடில் எழுத்துக்கள் குறித்து அறிந்தமையால் அவற்றையும் பட்டியல்களாகத் தனித்தனி மாறிகளில் 'உயிர்_குற்றெழுத்து', 'உயிர்_நெட்டெழுத்து' என எழுதிக்கொள்ள வேண்டும்.
உயிர்_குற்றெழுத்து = ['அ', 'இ', 'உ', 'எ', 'ஒ']
உயிர்_நெட்டெழுத்து = ['ஆ', 'ஈ', 'ஊ', 'ஏ', 'ஐ', 'ஓ', 'ஔ']
படிநிலை - 6: இவற்றை எல்லாம் ஆய்வுசெய்து பார்க்க ஒரு எழுத்தைப் பெறும் input எனும் குறியீட்டுச் சொல் தந்து, 'எழுத்தறிதல்' எனும் மாறியில் எழுத வேண்டும்.
எழுத்தறிதல் = input("எழுத்தைக் கண்டறிய ஒரு எழுத்தைத் தருக: ")
படிநிலை - 7: அதன்பிறகு if எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய வேண்டும்.
if எழுத்தறிதல் in உயிர்_குற்றெழுத்து:
படிநிலை - 8: எழுத்தறிதல் எனும் மாறியில் வாங்கிய எழுத்து உயிர்_குற்றெழுத்தாக இருந்தால் பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
print("சரி. இது உயிர் குறில் எழுத்தே. பாராட்டு…")
படிநிலை - 9: அந்த எழுத்து இல்லை என்றால் அதன்பிறகு elif எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய வேண்டும்.
elif எழுத்தறிதல் in உயிர்_நெட்டெழுத்து:
படிநிலை - 10: அந்த எழுத்து இல்லை என்றால் எழுத்தறிதல் எனும் மாறியில் வாங்கிய எழுத்து உயிர்_நெட்டெழுத்தாக இருந்தால் பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
print("சரி. இது உயிர் நெடில் எழுத்தே. பாராட்டு…")
படிநிலை - 11: மேற்கூறிய எழுத்து எதுவுமே இல்லை என்றால் அதன்பிறகு else எனும் கட்டளையில் எழுதி ஆய்வுசெய்ய பின்வருமாறு விளைவினைத் தருவதாக எழுத வேண்டும்.
else:
print("நீங்கள் எழுதிய எழுத்து உயிர் குறிலும் இல்லை; நெடிலும் இல்லை. மீண்டும் முயற்சிக்கவும்…")
முழுமையான பைத்தான் நிரல்

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

!pip install Open-Tamil

import tamil

உயிர்_எழுத்து = ['அ', 'ஆ', 'இ', 'ஈ', 'உ', 'ஊ', 'எ', 'ஏ', 'ஐ', 'ஒ', 'ஓ', 'ஔ']
print(உயிர்_எழுத்து)

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

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

if எழுத்தறிதல் in உயிர்_குற்றெழுத்து:
    print("சரி. இது உயிர் குறில் எழுத்தே. பாராட்டு…")
elif எழுத்தறிதல் in உயிர்_நெட்டெழுத்து:
    print("சரி. இது உயிர் நெடில் எழுத்தே. பாராட்டு…")
else:
    print("நீங்கள் எழுதிய எழுத்து உயிர் குறிலும் இல்லை; நெடிலும் இல்லை. மீண்டும் முயற்சிக்கவும்…")
மாதிரி விளைவு:
['அ', 'ஆ', 'இ', 'ஈ', 'உ', 'ஊ', 'எ', 'ஏ', 'ஐ', 'ஒ', 'ஓ', 'ஔ']
எழுத்தைக் கண்டறிய ஒரு எழுத்தைத் தருக: அ
சரி. இது உயிர் குறில் எழுத்தே. பாராட்டு…
சரி அன்ப! இந்த வகுப்பை இத்துடன் முடித்துக் கொள்வோமா. பிற குறிப்புகளை அடுத்துவரும் பாடவேளையில் அறிந்துகொள்வோமா? சரி ஐயா. மிக்க நன்றி!
முடிவுரை

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

துணைநின்றவை
📺 காணொலி விரிவுரையைப் பாருங்கள்
மூன்றாம் வார முழு விளக்கவுரை (காணொலி நேரம்: 35:20)

வாரம் 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 ...