Home  >  Article  >  Backend Development  >  Mastering Python Lists: Essential Techniques You Need to Know

Mastering Python Lists: Essential Techniques You Need to Know

Patricia Arquette
Patricia ArquetteOriginal
2024-11-12 22:28:02187browse

Mastering Python Lists: Essential Techniques You Need to Know

For

simple for

This will loop through the list and each element of the list will be available as a variable in every iteration. This is widely used when there is a need to go over all the elements of the list.

operating_systems = ["windows", "mac", "linux"]
for os in operating_systems:
    print(os)`

# Output
windows
mac
linux

for and range

When there is need for accessing based on index and index value is required.

operating_systems = ["windows", "mac", "linux"]
for i in range(len(operating_systems)):
    print(f"Index {i}: {operating_systems[i]}")
# Output
Index 0: windows
Index 1: mac
Index 2: linux

for and enumerate

This is an elegant way, if you need both index and the value

operating_systems = ["windows", "mac", "linux"]
for index, os in enumerate(operating_systems):
    print(f"Index is {index} and value is {os}")
# Output
Index is 0 and value is windows
Index is 1 and value is mac
Index is 2 and value is linux

While

simple while

operating_systems = ["windows", "mac", "linux"]
i = 0 # Inital condition, required to start
while i < len(operating_systems):
    print(f"While looping {i} got the value {operating_systems[i]}")
    i = i + 1 # This is very important, dont forget about infinite loops
# Output
While looping 0 got the value windows
While looping 1 got the value mac
While looping 2 got the value linux

Iterator

Gives fine control over when to move the iterator forward, though we have to rely on the StopIteration to check if the end is reached.

operating_systems = ["windows", "mac", "linux"]
iterator = iter(operating_systems)
while True:
    try:
        os = next(iterator)
        print(f"Consumed form iterator {os}")
    except StopIteration:
        print("Consumed all from iterator")
        break
# Output
Consumed form iterator windows
Consumed form iterator mac
Consumed form iterator linux
Consumed all from iterator
# Hack to avoid StopIteration
iterator = iter(operating_systems)
end_of_list = object()
reached_end = False
while not reached_end:
    os = next(iterator, end_of_list)# a predefined object as end of the list
    if os != end_of_list:
        print(os)
    else:
        reached_end = True

List comprehension

When transformation is required

operating_systems = ["windows", "mac", "linux"]
os_uppercase = [os.upper() for os in operating_systems]
print(os_uppercase) 
# Output
['WINDOWS', 'MAC', 'LINUX']

Cycling

When cycling through a list is require. Use with proper boundary condition to break the loop

import itertools
operating_systems = ["windows", "mac", "linux"]
for item in itertools.cycle(operating_systems):  
    print(item)
# Infinite cycling loopmake sure to have proper boundary condition to break
# Output
windows
mac
linux
windows
mac
linux
windows
mac
linux
windows
mac
linux
windows ....... Infinite loop

Over multiple lists

Simultaneously loop over multiple lists. Note the output if the list sizes are different.

operating_systems = ["windows", "mac", "linux"]
mobile_operating_systems = ["android", "ios"]

for os, mobile_os in zip(operating_systems,mobile_operating_systems):
    print(os, mobile_os)
# Output
windows android
mac ios

Loop in reverse

operating_systems = ["windows", "mac", "linux"]
for reversed_os in reversed(operating_systems):
    print(reversed_os)
# Output
linux
mac
windows

The above is the detailed content of Mastering Python Lists: Essential Techniques You Need to Know. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn