Thể loại
Loại hình
Tất cả

bangnam.com

Relaxed, inspiring essays about happiness.

10.7K

10

8

Get second last element of list python

Problem: Given a list. How to access the last element of this list?

Example: You have the list ['Alice', 'Bob', 'Liz'] and you want to get the last element 'Liz'.

Quick solution: Use negative indexing -1.

friends = ['Alice', 'Bob', 'Liz'] print(friends[-1]) # Liz

To access the last element of a Python list, use the indexing notation list[-1] with negative index -1 which points to the last list element. To access the second-, third-, and fourth-last elements, use the indices -2, -3, and -4. To access the n last elements of a list, use slicing list[:-n-1:-1] with negative stop index -n and negative step size -1.

Table of Contents

  • Method 1: Access the Last Element with Negative Indexing -1
  • Method 2: Access the n Last Elements with Slicing
  • Where to Go From Here?

Method 1: Access the Last Element with Negative Indexing -1

To bring everybody on the same page, let me quickly explain indices in Python by example. Suppose, you have list ['u', 'n', 'i', 'v', 'e', 'r', 's', 'e']. The indices are simply the positions of the characters of this string.

(Positive) Index01234567
Elementuniverse
Negative Index-8-7-6-5-4-3-2-1

Positive Index: The first character has index 0, the second character has index 1, and the i-th character has index i-1.

Negative Index: The last character has index -1, the second last character has index -2, and the i-th last character has index -i.

Now, you can understand how to access the last element of the list:

friends = ['Alice', 'Bob', 'Liz'] print(friends[-1]) # Liz

But how to access the second-last element? Just use index -2!

friends = ['Alice', 'Bob', 'Liz'] print(friends[-2]) # Bob

Method 2: Access the n Last Elements with Slicing

But what if you want to access the n last elements? The answer is slicing.

The default slicing operation list[start:stop:step] accesses all elements between start (included) and stop (excluded) indices, using the given step size over the list. For example, the slicing operation friends[0:3:2] would start with the first element 'Alice' and end with the third element 'Liz' (included), but taking only every second element due to the step size of 2effectively skipping the second element 'Bob'.

You can use slicing with negative start and stop indices and with negative stop size to slice from the right to the left. To access the n last elements in the slice, youd therefore use the following code:

universe = ['u', 'n', 'i', 'v', 'e', 'r', 's', 'e'] # Access the n=4 last element from the list: n = 4 print(universe[:-n-1:-1]) # ['e', 's', 'r', 'e']

There are different points to consider in the code:

  • You use a negative step size -1 which means that you slice from the right to the left.
  • If you dont provide a value for start, stop, or step indices, Python takes the default ones. For example, we dont provide the start index and perform negative slicing so Python starts from the last element 'e'.
  • You want to get the n last elements. The n-th last element has index -n. But as the stop index is never included in the slice, we need to slice one step further to the leftto the element with index -n-1 to include the element with index -n.

Try this yourself in our interactive code shell:

Exercise: What happens if the list has less than n characters?

Where to Go From Here?

Enough theory, lets get some practice!

To become successful in coding, you need to get out there and solve real problems for real people. Thats how you can become a six-figure earner easily. And thats how you polish the skills you really need in practice. After all, whats the use of learning theory that nobody ever needs?

Practice projects is how you sharpen your saw in coding!

Do you want to become a code master by focusing on practical code projects that actually earn you money and solve problems for people?

Then become a Python freelance developer! Its the best way of approaching the task of improving your Python skillseven if you are a complete beginner.

Join my free webinar How to Build Your High-Income Skill Python and watch how I grew my coding business online and how you can, toofrom the comfort of your own home.

Join the free webinar now!

Dịch vụ SEO website - Thiết kế Website

★★★★★ 7 đánh giá trên Google
Văn phòng công ty

Địa chỉ: Số 5 Trần Kim Xuyến - P.Trung Hoà - Q.Cầu Giấy - TP. Hả Nội

Điện thoại: 0922 892 892

Trang web: Bangnam.com

Từ Dịch vụ SEO website - Thiết kế Website

"BANGNAM là đơn vị cung cấp Dịch Vụ SEO, Dịch vụ thiết kế Website, Giải pháp quản trị doanh nghiệp ERP hàng đầu tại Việt Nam."

Mọi người cũng tìm kiếm

Thiết kế website Hà Nội
Nhà thiết kế trang web
Thiết kế website bán hàng
Nhà thiết kế trang web
Dịch vụ SEO
Nhà tối ưu công cụ tìm kiếm
Thiết kế website TP HCM
Nhà thiết kế trang web
Thiết kế website Hà Nội
Nhà thiết kế trang web