SET
அறிமுகம்
பைத்தானில், Set என்பது தரவின் தொகுப்பின் மற்றொரு வகையாகும். Set என்பது மாறக்கூடிய மற்றும் நகல்கள் இல்லாத வரிசைப்படுத்தப்படாத உறுப்புகளின் தொகுப்பாகும். அதாவது, Set-ல் உள்ள உறுப்புகள் மீண்டும் இடம்பெற முடியாது. இந்த சிறப்பியல்பு உறுப்பு சோதனையை சேர்க்கவும் மற்றும் நகல் உறுப்புகளை நீக்கவும் பயன்படுகிறது.
1. Set உருவாக்குதல்
நெளிவு அடைப்புக்குறிக்குள் காற்புள்ளியால் பிரிக்கப்பட்ட அனைத்து
உறுப்புகளையும் இருத்துவதன் மூலம் Set உருவாக்கப்படுகிறது. Set() செயற்கூறு, பைதானில்
Set-ஐ உருவாக்கப் பயன்படுகிறது.
தொடரியல்:
Set_Variable = {E1, E2, E3 ........... En}
எடுத்துக்காட்டு
>>> S1={1,2,3,'A',3.14}
>>> print(S1)
{1,2,3,3.14,'A'}
>>> S2={1,2,2,'A',3.14}
>>> print(S2)
{1, 2, 'A', 3.14}
மேலே கொடுக்கப்பட்ட எடுத்துக்காட்டில், Set S1 என்பது நகல்கள்
இல்லாத பல்வேறு வகை உறுப்புகளுடன் உருவாக்கப்பட்டுள்ளது. Set S2 என்பது நகல் மதிப்புகளுடன்
உருவாக்கப்பட்டுள்ளது. ஆனால் பைத்தான், நகல் மதிப்புகளிலிருந்து ஒரேயொரு உறுப்பை மட்டுமே
எடுத்துக் கொள்ளும். அதாவது, பைத்தான் நகல் மதிப்புகளை நீக்கிவிடும் ஏனெனில் பைத்தானில்
Set நகல் உறுப்புகளை பெற்றிருக்காது.
குறிப்பு
Set-ல் இருந்து உறுப்புகளை அச்சிடும் பொழுது, பைத்தான் மதிப்புகளை வெவ்வேறு வரிசையில் காண்பிக்கும்.
ஒரு List அல்லது Tuple ஐ Set ( ) செயற்கூறைப் பயன்படுத்தி
Set ஆக மாற்ற முடியும். இது மிகவும் எளிய முறையாகும். List அல்லது Tuple ஐ உருவாக்கிய
பின் அதன் மாறியை Set() செயற்கூறினுள் அளபுருவாக கொடுக்க வேண்டும்.
எடுத்துக்காட்டு
MyList=[2,4,6,8,10]
MySet=set(MyList)
print(MySet)
வெளியீடு
{2, 4, 6, 8, 10}
3. Set செயற்பாடுகள்
கணிதத்தில் கற்ற Set செயற்பாடுகள் ஆகிய ஒட்டு (Union), வெட்டு
(intersection) வேறுபாடு (difference) சமச்சீரான வேறுபாடு (Symmetric difference),
போன்றவற்றை பைத்தானிலும் பயன்படுத்தலாம்.
1. ஒட்டு (Union):
இது இரண்டு அல்லது அதற்கு மேற்பட்ட Set-களின் அனைத்து உறுப்புகளையும்
உள்ளடக்கும்.
பைத்தானில் | என்ற செயற்குறி இரண்டு Set களின் ஒட்டை உருவாக்கப்பயன்படுகிறது. Union செயற்கூறும் பைத்தானில்
இரண்டு Set களை இணைக்கப் பயன்படுகிறது.
எடுத்துக்காட்டு: ஒட்டு (Union) செயற்குறியைப் பயன்படுத்தி இரண்டு
Set களை இணைப்பதற்கான நிரல்
set_A={2,4,6,8}
set_B={'A', 'B', 'C', 'D'}
U_set=set_A|set_B
print(U_set)
வெளியீடு
{2, 4, 6, 8, 'A', 'D', 'C', 'B'}
எடுத்துக்காட்டு: ஒட்டு செயற்கூறுவைப்பயன்படுத்தி இரண்டு Setகளை இணைப்பதற்கான
நிரல்
set_A={2,4,6,8}
set_B={'A', 'B', 'C', 'D'}
set_U=set_A.union(set_B)
print(set_U)
வெளியீடு
{'D', 2, 4, 6, 8, 'B', 'C', 'A'}
2. வெட்டு (intersection)இது இரண்டு Setகளின் பொதுவான உறுப்புகளை உள்ளடக்கியது
பைத்தானில் & செயற்குறி இரண்டு Set களை வெட்டுவதற்கு பயன்படுகிறது.
வெட்டு (intersection()) செயற்கூறும் பைத்தானில் இரண்டு Set களை வெட்டுவதற்கு பயன்படுகிறது.
எடுத்துக்காட்டு:வெட்டு intersection()செயற்குறியைப் பயன்படுத்தி இரண்டு Setகளை வெட்டுவதற்கான நிரல்
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A & set_B)
வெளியீடு
{'A', 'D'}
எடுத்துக்காட்டு:வெட்டு intersection()செயற்குறியைப் பயன்படுத்தி இரண்டு Setகளை வெட்டுவதற்கான நிரல்
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A.intersection(set_B))
வெளியீடு
{'A', 'D'}
3. வேறுபாடு Difference
இது முதல் Set(A) ல் உள்ள அனைத்து உறுப்புகளையும் உள்ளடக்கியது.
இது இரண்டாவது Set-ஐ தவிர்க்கிறது.
பைத்தானில்-(minus) செயற்குறி Set செயற்பாட்டின் வேறுபாட்டைக்
கண்டறிய பயன்படுகிறது.difference() செயற்கூறும் வேறுபாட்டு செயற்பாட்டிற்காக பயன்படுகிறது.
எடுத்துக்காட்டு:செயற்குறியைப் பயன்படுத்தி இரண்டு Setகளின் வேற்றுமைக்கான நிரல்
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A - set_B)
வெளியீடு
{2,4}
எடுத்துக்காட்டு: difference செயற்கூறுவைப் பயன்படுத்தி இரண்டு Setகளின் வேற்றுமைக்கான நிரல்
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A.difference(set_B))
வெளியீடு
{2,4}
4. சமச்சீரான வேறுபாடு (Symmetric difference)
இது இரண்டு Set-ல் உள்ள பொதுவான உறுப்புகளை மட்டும் தவிர்த்து
மற்ற அனைத்து உறுப்புகளையும் உள்ளடக்கியது.
Caret(^) செயற்குறி பைத்தானில்
சமச்சீரான வேறுபாட்டை கண்டறிய பயன்படுகிறது. Symmetric difference() செயற்கூறும் அதே
செயலை செய்ய பயன்படுகிறது.
எடுத்துக்காட்டு:Caret(^) செயற்குறியைப் பயன்படுத்தி சமச்சீரான வேறுபாட்டை கண்டறியும் நிரல்.
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A ^ set_B)
வெளியீடு
{2, 4, 'B', 'C'}
எடுத்துக்காட்டு: Symmetric difference செயற்கூறைப் பயன்படுத்தி சமச்சீரான வேறுபாட்டை கண்ட றியும் நிரல்
set_A={'A', 2, 4, 'D'}
set_B={'A', 'B', 'C', 'D'}
print(set_A.symmetric_difference(set_B))
வெளியீடு
{2, 4, 'B', 'C'}
நிரல்
1:
பகா எண்களைக் கொண்ட ஒரு Set, இரட்டைப்படை எண்களை கொண்ட மற்றொரு Set உருவாக்குவதற்கான
நிரல் (ஒட்டு, வெட்டு, வேறுபாடு, சமச்சீரான வேறுபாடு போன்ற செயற்பாடுகளுக்கான விடையை
நிரூபிக்கவும்).
எடுத்துக்காட்டு
even=set([x*2 for x in
range(1,11)]).
primes=set()
for i in range(2,20):
j=2
f=0
while j<=i/2:
if i%j==0:
f=1
j+=1
if f==0:|
primes.add(i)
print("Even Numbers: ''', even)
print("Prime Numbers: '', primes)
print("Union:'', even.union(primes))
print("Intersection:'',
even.intersection(primes))
print("Difference: ''',
even.difference(primes))
print("Symmetric Difference:''',
even.symmetric_difference(primes))
வெளியீடு
Even Numbers: {2, 4, 6, 8, 10, 12, 14, 16,
18, 20}
Prime Numbers: {2, 3, 5, 7, 11, 13, 17, 19}
Union: {2, 3, 4, 5, 6, 7, 8, 10, 11, 12,
13, 14, 16, 17, 18, 19, 20}
Intersection: {2, 4}
Difference: {6, 8, 10, 12, 14, 16, 18, 20}
Symmetric Difference: {3, 5, 6, 7, 8, 10, 11, 12, 13, 14, 16, 17, 18, 19, 20}
நினைவில் கொள்க:
• பைத்தான் நிரலாக்க மொழியில் நான்கு வகையான தரவினங்கள் உள்ளன.
அவை List, Tuples, Set மற்றும் Dictionary ஆகும்.
• List "வரிசைமுறை தரவினம்” என்றும் அழைக்கப்படுகிறது.
List-ல் உள்ள ஒவ்வொரு மதிப்பும் உறுப்பு என்றழைக்கப்படுகிறது.
• List உள்ள உறுப்புகள் சதுர அடைப்புக்குறிக்குள் அடைக்கப்பட்டிருக்க
வேண்டும்.
• ஒவ்வொரு உறுப்பும் பூஜ்ஜியத்திலிருந்து தொடங்குகின்ற தனித்தன்மை
வாய்ந்த சுட்டெண்ணை கொண்டுள்ளது.
• பைத்தான் நேர்மறை மற்றும் எதிர்மறை எண்களை சுட்டெண்ணாக அனுமதிக்கிறது.
• மடக்குகள், List இருந்து அனைத்து உறுப்புகளையும் அணுகப் பயன்படுகின்றன.
• “for” மடக்கு அனைத்து உறுப்புகளையும் ஒன்றன்பின் ஒன்றாக அணுகுவதற்கு
பொருத்தமான மடக்காகும்.
• append( ), extend( ) மற்றும் insert( ) செயற்கூறுகள்
List அதிக உறுப்புகளை சேர்க்கப் பயன்படுகின்றன.
• del, remove( ) மற்றும் pop( ) List இருந்து உறுப்புகளை நீக்கப்பயன்படுகின்றன.
• Tuples காற்புள்ளியால் பிரிக்கப்பட்ட பல மதிப்புகளைவளைவு அடைப்புக்குறிக்குள்
கொண்டுள்ளது.
• Tuples-ன் மடக்குச் செயல் List-ஐ காட்டிலும் விரைவானது.
• Tuples( ) செயற்கூறு List-ல் இருந்து Tuples-ஐ உருவாக்கவும்
பயன்படுகிறது. .
• ஒரு உறுப்புடன் Tuples-ஐ உருவாக்குவது “ஒற்றை” Tuples என அழைக்கப்படுகிறது.