Hướng dẫn how do you add an element to a specific index in python? - làm cách nào để bạn thêm một phần tử vào một chỉ mục cụ thể trong python?

Hướng dẫn how do you add an element to a specific index in python? - làm cách nào để bạn thêm một phần tử vào một chỉ mục cụ thể trong python?

Trong bài viết này, chúng tôi sẽ thảo luận về cách chèn một yếu tố trong danh sách ở vị trí cụ thể.

Trong danh sách Python cung cấp chức năng thành viên Chèn () tức là.

list.insert(position, element)

Nó chấp nhận một vị trí và một phần tử và chèn phần tử tại vị trí đã cho trong danh sách.

Hãy để xem một ví dụ,

Giả sử chúng ta có một danh sách các chuỗi, tức là.

# List of string 
list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']

Bây giờ hãy để chèn ‘tại sao ở vị trí thứ 3 trong danh sách, tức là.

# Add an element at 3rd position in the list
list1.insert(3, 'why')

Chỉ mục sẽ bắt đầu từ 0 trong danh sách. Vì vậy, phần tử sẽ được chèn ở vị trí thứ 3, tức là sau 0,1 & 2.

Quảng cáo

Vì vậy, nội dung danh sách sẽ là bây giờ,

['Hi', 'hello', 'at', 'why', 'this', 'there', 'from']

Chèn một phần tử ở đầu danh sách

Để chèn phần tử ở phía trước của danh sách trên, chức năng gọi chèn (), tức là.

# Add an element at the front of list
list1.insert(0, 'city')

Vì vậy, nội dung danh sách sẽ là bây giờ,

['city', 'Hi', 'hello', 'at', 'why', 'this', 'there', 'from']

Chèn tất cả các yếu tố của danh sách khác tại chỉ mục cụ thể trong danh sách đã cho

Giả sử chúng ta có hai danh sách, tức là.

list1 = ['city', 'Hi', 'hello', 'at', 'why', 'this', 'there', 'from']

list2 = [3,5,7,1]

Bây giờ chèn tất cả các yếu tố của List2 ở vị trí thứ 3 trong List1

Phương pháp 1:

Lặp lại list2 ngược và tiếp tục chèn phần tử ở chỉ mục thứ 3 trong List1 bằng danh sách.insert () tức là.

# Insert all the elements in list2 to list1 between 3 to 4 th element
for elem in reversed(list2) :
    list1.insert(3, elem)

Phương pháp 2:

Splice list1 từ 0 đến 2 và hợp nhất tất cả các yếu tố của List2 trong đó. Sau đó hợp nhất tất cả các yếu tố còn lại của danh sách từ 3 đến cuối, tức là.

# Insert all the elements in list2 to list1 between 3 to 4 th element
list1 = list1[:3] + list2 + list1[3:]

Trong cả hai trường hợp, danh sách nội dung sẽ có ngay bây giờ,

['city', 'Hi', 'hello', 3, 5, 7, 1, 'at', 'why', 'this', 'there', 'from']

Ví dụ hoàn chỉnh như sau,

# List of string 
list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
0

Output:

# List of string 
list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
1 & nbsp;
 

Cách tiếp cận hiệu quả hiệu suất nhất

Bạn cũng có thể chèn phần tử bằng cách sử dụng lập chỉ mục lát trong danh sách. Ví dụ:

# List of string 
list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
2

Để chèn nhiều phần tử lại với nhau tại một chỉ mục nhất định, tất cả những gì bạn cần làm là sử dụng

# Add an element at 3rd position in the list
list1.insert(3, 'why')
3 của nhiều yếu tố mà bạn muốn chèn. Ví dụ:inserting multiple elements together at a given index, all you need to do is to use a
# Add an element at 3rd position in the list
list1.insert(3, 'why')
3 of multiple elements that you want to insert. For example:

# List of string 
list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
3

Để biết thêm về lập chỉ mục lát cắt, bạn có thể tham khảo: Hiểu ký hiệu lát cắt.

Lưu ý: Trong Python 3.x, sự khác biệt về hiệu suất giữa lập chỉ mục lát cắt và

# Add an element at 3rd position in the list
list1.insert(3, 'why')
4 giảm đáng kể và cả hai đều gần như tương đương. Tuy nhiên, trong Python 2.x, sự khác biệt này khá đáng chú ý. Tôi đã chia sẻ so sánh hiệu suất sau trong câu trả lời này. In Python 3.x, difference of performance between slice indexing and
# Add an element at 3rd position in the list
list1.insert(3, 'why')
4 is significantly reduced and both are almost equivalent. However, in Python 2.x, this difference is quite noticeable. I have shared performance comparisons later in this answer.


Thay thế bằng cách sử dụng danh sách hiểu (nhưng rất chậm về mặt hiệu suất): (but very slow in terms of performance):

Thay vào đó, nó cũng có thể đạt được bằng cách sử dụng danh sách hiểu với

# Add an element at 3rd position in the list
list1.insert(3, 'why')
5. (Nhưng xin đừng làm theo cách này. Nó chỉ là để minh họa):

# List of string 
list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
4

So sánh hiệu suất của tất cả các giải pháp

Đây là so sánh

# Add an element at 3rd position in the list
list1.insert(3, 'why')
6 của tất cả các câu trả lời với danh sách 1000 yếu tố trên Python 3.9.1 và Python 2.7.16. Câu trả lời được liệt kê theo thứ tự hiệu suất cho cả hai phiên bản Python.

Python 3.9.1

  1. Câu trả lời của tôi bằng cách sử dụng chèn cắt lát - nhanh nhất (2,25 PhaSEC mỗi vòng)

    # List of string 
    list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
    5
  2. Câu trả lời của Rushy Panchal với hầu hết các phiếu bầu bằng cách sử dụng

    # List of string 
    list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
    6
  3. Câu trả lời được chấp nhận của Atoztoa dựa trên sự hợp nhất của các danh sách cắt lát - thứ ba (5,01 PhaSEC mỗi vòng)

    # List of string 
    list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
    7
  4. Câu trả lời của tôi với danh sách hiểu và

    # Add an element at 3rd position in the list
    list1.insert(3, 'why')
    
    5 - thứ tư (rất chậm với 135 Lausc mỗi vòng)

    # List of string 
    list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
    8

Python 2.7.16

  1. Câu trả lời của tôi bằng cách sử dụng chèn cắt lát - nhanh nhất (2.09 PhaSEC mỗi vòng)

    # List of string 
    list1 = ['Hi' ,  'hello', 'at', 'this', 'there', 'from']
    9
  2. Câu trả lời của Rushy Panchal với hầu hết các phiếu bầu bằng cách sử dụng

    # Add an element at 3rd position in the list
    list1.insert(3, 'why')
    
    0
  3. Câu trả lời được chấp nhận của Atoztoa dựa trên việc hợp nhất các danh sách cắt lát - thứ ba (4,44 Lausec mỗi vòng)

    # Add an element at 3rd position in the list
    list1.insert(3, 'why')
    
    1
  4. Câu trả lời của tôi với sự hiểu biết danh sách và

    # Add an element at 3rd position in the list
    list1.insert(3, 'why')
    
    5 - thứ tư (rất chậm với 103 Lausc mỗi vòng)

    # Add an element at 3rd position in the list
    list1.insert(3, 'why')
    
    2

Làm thế nào để bạn thêm vào một chỉ mục cụ thể trong Python?

Sử dụng hàm chèn () (chèn giá trị được cung cấp tại vị trí được chỉ định) để chèn mục đã cho vào chỉ mục được chỉ định vào danh sách bằng cách chuyển giá trị chỉ mục và mục được chèn làm đối số cho nó.

Làm cách nào để thêm một phần tử vào một vị trí chỉ mục cụ thể?

Nếu chúng ta muốn thêm một phần tử vào vị trí thứ n, thì chỉ mục là (n - 1) chỉ mục ...
Bắt đầu → chỉ mục để chèn phần tử ..
Deletecount → 0 (vì chúng tôi không cần xóa bất kỳ yếu tố nào) ..
elem → các yếu tố để chèn ..

Làm thế nào để bạn thêm một chuỗi vào một danh sách trong Python ở một chỉ mục cụ thể?

Chèn một phần tử trong danh sách tại chỉ mục cụ thể bằng danh sách.insert () trong danh sách Python cung cấp một hàm thành viên Chèn (), tức là nó chấp nhận một vị trí và một phần tử và chèn phần tử tại vị trí đã cho trong danh sách.list. insert() In python list provides a member function insert() i.e. It accepts a position and an element and inserts the element at given position in the list.

Làm thế nào để bạn thêm một phần tử tại một chỉ mục cụ thể vào một mảng trong Python?

Thêm vào một mảng bằng mô -đun mảng bằng cách sử dụng hàm append (): nó thêm các phần tử vào cuối mảng.Bằng cách sử dụng hàm chèn (): nó chèn các phần tử tại chỉ mục đã cho.Bằng cách sử dụng hàm mở rộng (): Nó kéo dài danh sách bằng cách nối thêm các phần tử từ cả hai danh sách.By using insert() function : It inserts the elements at the given index. By using extend() function : It elongates the list by appending elements from both the lists.