Python - Add List Items

பைத்தான் - பட்டியல் உருப்படிகளைச் சேர்த்தல்

Python - Add List Items

பட்டியல்கள் மாற்றக்கூடியவை (mutable), அதாவது பட்டியலை உருவாக்கிய பிறகு அதில் புதிய உருப்படிகளைச் சேர்க்கலாம். பைத்தானில் பட்டியல்களில் உருப்படிகளைச் சேர்க்க பல வழிகள் உள்ளன.

Append() முறை - இறுதியில் சேர்த்தல்

பட்டியலின் இறுதியில் ஒரு உருப்படியைச் சேர்க்க, append() முறையைப் பயன்படுத்தவும்:

Example

thislist = ["apple", "banana", "cherry"]
thislist.append("orange")
print(thislist)  # Output: ['apple', 'banana', 'cherry', 'orange']
0
"apple"
1
"banana"
2
"cherry"
Original List
append("orange")
0
"apple"
1
"banana"
2
"cherry"
3
"orange"
After append()

append() முறை எடுத்துக்காட்டுகள்:

fruits = ["apple", "banana"]

# Append single item
fruits.append("cherry")
print(fruits)  # ['apple', 'banana', 'cherry']

# Append multiple items one by one
fruits.append("orange")
fruits.append("grape")
print(fruits)  # ['apple', 'banana', 'cherry', 'orange', 'grape']

# Append different data types
numbers = [1, 2, 3]
numbers.append(4)
numbers.append(5.5)
numbers.append("six")
print(numbers)  # [1, 2, 3, 4, 5.5, 'six']

⚠️ குறிப்பு:

append() முறை எப்போதும் பட்டியலின் இறுதியில் உருப்படியைச் சேர்க்கிறது. இது பட்டியலின் நீளத்தை 1 ஆக அதிகரிக்கிறது.

Insert() முறை - குறிப்பிட்ட இடத்தில் சேர்த்தல்

ஒரு குறிப்பிட்ட குறியீட்டில் பட்டியல் உருப்படியைச் செருக, insert() முறையைப் பயன்படுத்தவும்.

insert() முறை குறிப்பிட்ட குறியீட்டில் ஒரு உருப்படியைச் செருகுகிறது:

Example

thislist = ["apple", "banana", "cherry"]
thislist.insert(1, "orange")
print(thislist)  # Output: ['apple', 'orange', 'banana', 'cherry']
0
"apple"
1
"banana"
2
"cherry"
Original List
insert(1, "orange")
0
"apple"
1
"orange"
2
"banana"
3
"cherry"
After insert() at index 1

⚠️ குறிப்பு:

மேலே உள்ள எடுத்துக்காட்டுகளின் விளைவாக, பட்டியல்கள் இப்போது 4 உருப்படிகளைக் கொண்டிருக்கும்.

insert() முறை எடுத்துக்காட்டுகள்:

colors = ["red", "blue", "green"]

# Insert at beginning
colors.insert(0, "yellow")
print(colors)  # ['yellow', 'red', 'blue', 'green']

# Insert at end (same as append)
colors.insert(len(colors), "purple")
print(colors)  # ['yellow', 'red', 'blue', 'green', 'purple']

# Insert at negative index
colors.insert(-1, "orange")  # Insert before last item
print(colors)  # ['yellow', 'red', 'blue', 'green', 'orange', 'purple']

# Insert beyond length (adds to end)
colors.insert(10, "black")
print(colors)  # Adds 'black' at the end

Extend() முறை - மற்றொரு பட்டியலிலிருந்து சேர்த்தல்

மற்றொரு பட்டியலிலிருந்து உறுப்புகளை தற்போதைய பட்டியலில் சேர்க்க, extend() முறையைப் பயன்படுத்தவும்.

Example

thislist = ["apple", "banana", "cherry"]
tropical = ["mango", "pineapple", "papaya"]
thislist.extend(tropical)
print(thislist)  # Output: ['apple', 'banana', 'cherry', 'mango', 'pineapple', 'papaya']
Original List:
"apple"
"banana"
"cherry"
Tropical List:
"mango"
"pineapple"
"papaya"
extend() →
+
Result:
0
"apple"
1
"banana"
2
"cherry"
3
"mango"
4
"pineapple"
5
"papaya"

உறுப்புகள் பட்டியலின் இறுதியில் சேர்க்கப்படும்.

💡 extend() vs append() வேறுபாடு:

extend() மற்றொரு பட்டியலின் அனைத்து உருப்படிகளையும் சேர்க்கிறது
append() ஒரு ஒற்றை உருப்படியை மட்டும் சேர்க்கிறது (அது ஒரு பட்டியலாக இருந்தாலும்)

எந்தவொரு இட்டரபிளையும் சேர்த்தல்

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

Example

thislist = ["apple", "banana", "cherry"]
thistuple = ("kiwi", "orange")
thislist.extend(thistuple)
print(thislist)  # Output: ['apple', 'banana', 'cherry', 'kiwi', 'orange']

Tuple

டூப்பிள்கள்

list1 = [1, 2, 3]
tuple1 = (4, 5)
list1.extend(tuple1)
# Result: [1, 2, 3, 4, 5]

Set

செட்கள்

list1 = [1, 2, 3]
set1 = {4, 5, 6}
list1.extend(set1)
# Order may vary: [1, 2, 3, 4, 5, 6]

Dictionary

அகராதிகள்

list1 = [1, 2, 3]
dict1 = {'a': 4, 'b': 5}
list1.extend(dict1)
# Adds keys: [1, 2, 3, 'a', 'b']

String

சரங்கள்

list1 = ['a', 'b']
str1 = "cde"
list1.extend(str1)
# Result: ['a', 'b', 'c', 'd', 'e']

⚠️ குறிப்பு:

அகராதிகளை extend() செய்யும்போது, விசைகள் (keys) மட்டுமே சேர்க்கப்படும், மதிப்புகள் (values) சேர்க்கப்படாது.

சேர்க்கும் முறைகள் ஒப்பீடு

முறை விளக்கம் எடுத்துக்காட்டு முடிவு பயன்பாடு
append() பட்டியலின் இறுதியில் ஒரு உருப்படியைச் சேர்க்கிறது list.append(x) [1, 2, 3] → [1, 2, 3, x] ஒரு உருப்படியை மட்டும் சேர்க்க
insert() குறிப்பிட்ட குறியீட்டில் உருப்படியைச் செருகுகிறது list.insert(i, x) [1, 2, 3] → [1, x, 2, 3] குறிப்பிட்ட இடத்தில் செருக
extend() மற்றொரு இட்டரபிளின் அனைத்து உருப்படிகளையும் சேர்க்கிறது list.extend(iterable) [1, 2, 3] + [4, 5] → [1, 2, 3, 4, 5] பல உருப்படிகளை ஒரே நேரத்தில் சேர்க்க
+ operator இரண்டு பட்டியல்களை இணைக்கிறது list1 + list2 [1, 2] + [3, 4] → [1, 2, 3, 4] புதிய பட்டியலை உருவாக்க
+= operator இருக்கும் பட்டியலுடன் சேர்க்கிறது list1 += list2 [1, 2] += [3, 4] → [1, 2, 3, 4] extend() போலவே

🎯 முக்கிய வேறுபாடுகள்:

1. append() vs extend(): append() ஒரு உருப்படியைச் சேர்க்கிறது, extend() பல உருப்படிகளைச் சேர்க்கிறது
2. insert() vs append(): insert() குறிப்பிட்ட இடத்தில் செருகுகிறது, append() எப்போதும் இறுதியில் சேர்க்கிறது
3. extend() vs +: extend() இருக்கும் பட்டியலை மாற்றுகிறது, + புதிய பட்டியலை உருவாக்குகிறது

பொதுவான பயன்பாட்டு வடிவங்கள்

📝

Building Lists

பட்டியல்களை உருவாக்குதல்

# Start with empty list
items = []
items.append("first")
items.append("second")
items.insert(1, "middle")
# Result: ['first', 'middle', 'second']
🔄

Combining Lists

பட்டியல்களை இணைத்தல்

list1 = [1, 2, 3]
list2 = [4, 5, 6]
list3 = [7, 8, 9]

# Method 1: extend()
list1.extend(list2)
list1.extend(list3)

# Method 2: + operator
combined = list1 + list2 + list3
🎯

Conditional Adding

நிபந்தனை சேர்த்தல்

numbers = []
for i in range(10):
    if i % 2 == 0:  # Add only even numbers
        numbers.append(i)
# Result: [0, 2, 4, 6, 8]

பயிற்சிகள் மூலம் கற்றல்

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

பின்வரும் தொடரியலின் முடிவு என்னவாக இருக்கும்:

mylist = ['apple', 'banana', 'cherry']
mylist.insert(0, 'orange')
print(mylist[1])
0
'apple'
1
'banana'
2
'cherry'
Original
insert(0, 'orange')
0
'orange'
1
'apple'
2
'banana'
3
'cherry'
After insert(0, 'orange')
apple
✓ சரி! insert(0, 'orange') முதல் இடத்தில் 'orange' ஐச் செருகுகிறது. முன்பு mylist[0] = 'apple' ஆக இருந்தது, இப்போது அது mylist[1] = 'apple' ஆக மாறிவிட்டது
banana
✗ தவறு! insert() பிறகு, 'banana' mylist[2] ஆக மாறிவிட்டது. mylist[1] இப்போது 'apple' ஆகும்
cherry
✗ தவறு! 'cherry' mylist[3] ஆக மாறிவிட்டது. insert(0) அனைத்து உருப்படிகளையும் ஒரு குறியீட்டால் மாற்றுகிறது
orange
✗ தவறு! 'orange' mylist[0] ஆகும். mylist[1] இரண்டாவது உருப்படியை அணுகுகிறது, அது இப்போது 'apple' ஆகும்

செயல்திறன் பரிசீலனைகள்

append() is Fast: append() O(1) நேர சிக்கலானது
# Fast for adding single items
my_list.append(item)
insert(0) is Slow: insert(0) O(n) நேர சிக்கலானது
# Slow for large lists
my_list.insert(0, item) # Avoid for large lists
Use extend() for Multiple Items: extend() append() விட சிறந்தது
# Good: Add multiple items at once
my_list.extend([1, 2, 3, 4, 5])
# Bad: Multiple append calls
# for item in items: my_list.append(item)

💡 சிறந்த பழக்கம்:

பெரிய பட்டியல்களின் தொடக்கத்தில் அடிக்கடி செருக வேண்டியிருந்தால், collections.deque ஐப் பயன்படுத்தவும், இது இருபுறமும் O(1) நேர செருகலை வழங்குகிறது.

பொதுவான பிழைகள்

append() vs extend() Confusion

# Wrong: Trying to append a list
my_list = [1, 2, 3]
my_list.append([4, 5])
# Result: [1, 2, 3, [4, 5]] (nested list)

# Correct: Use extend()
my_list = [1, 2, 3]
my_list.extend([4, 5])
# Result: [1, 2, 3, 4, 5]

Index Out of Range

# insert() with out of range index
my_list = [1, 2, 3]
my_list.insert(10, 4)  # Works! Adds to end
# Result: [1, 2, 3, 4]

# But direct index assignment fails
my_list[10] = 5  # IndexError!

Correct Usage

# Building a list properly
results = []
for i in range(5):
    results.append(i * 2)

# Or using list comprehension
results = [i * 2 for i in range(5)]