Python change all values in list

4 Ways To Replace Items In Python Lists

Learn how to replace items in a Python list by solving basic algorithms a get ready for your next coding interview

Update: Many of you contacted me asking for valuable resources to nail Python coding interviews. Below I share 4 courses that I strongly recommend to keep exercising after practicing the algorithms in this post:

  • LeetCode In Python: 50 Algorithms Coding Interview Questions→ Best For Coding Rounds Prep!
  • Python advanced Coding Problems (StrataScratch)Best platform I found to prepare Python & SQL coding interviews so far! Better and cheaper than LeetCode!
  • Practicing Coding Interview Questions In Python (60+Problems)
  • Python Data Engineering NanodegreeHigh Quality Course If You Have More Time To Commit. **UP TO 75% DISCOUNT ON UDACITY COURSES IN March 2022**
Читайте также:  How to generate key in java

Hope you’ll find them useful too! Now enjoy the article 😀

3 Data Engineering Courses To Advance Your Career In 2021

Join the data industry, change role or simply learn cutting-edge technologies by enrolling in Data Engineering…

Introduction

While preparing for your next Python coding round, you might have noticed that algorithms requiring to manipulate one or more lists appear rather frequently. Sooner or later, you should expect to encounter one of them during your interviews as well.

Algorithms requiring to manipulate one or more lists appear rather frequently. Sooner or later, you should expect to encounter one of them during your interviews as well.

In order to help you in the process of mastering this data structure and improve your coding skills, below I present 4 methods to replace an item in Python lists as well as four simple algorithms for you to test your skills.

Most of the classic interview questions can be solved with multiple approaches, so for each problem, try to come up with your solution first, before looking at the one I…

Источник

Python: Replace Item in List (6 Different Ways)

In this tutorial, you’ll learn how to use Python to replace an item or items in a list. You’l learn how to replace an item at a particular index, how to replace a particular value, how to replace multiple values, and how to replace multiple values with multiple values.

Being able to work with lists is an important skill for any Python developer, given how prevalent and understandable these Python data structures are.

By the end of this tutorial, you’ll have learned:

  • How to use list assignment to replace an item in a Python list
  • How to use for loops and while loops to replace an item in a Python list
  • How to replace multiple items in a list

Replace an Item in a Python List at a Particular Index

Python lists are ordered, meaning that we can access (and modify) items when we know their index position. Python list indices start at 0 and go all the way to the length of the list minus 1.

You can also access items from their negative index. The negative index begins at -1 for the last item and goes from there. To learn more about Python list indexing, check out my in-depth overview here.

How does Python List Indexing Work

If we want to replace a list item at a particular index, we can simply directly assign new values to those indices.

Let’s take a look at what that looks like:

# Replace an item at a particular index in a Python list a_list = [1, 2, 3, 4, 5, 6, 7, 8, 9] # Mofidy first item a_list[0] = 10 print(a_list) # Returns: [10, 2, 3, 4, 5, 6, 7, 8, 9] # Modify last item a_list[-1] = 99 print(a_list) # Returns: [10, 2, 3, 4, 5, 6, 7, 8, 99]

In the next section, you’ll learn how to replace a particular value in a Python list using a for loop.

Want to learn how to use the Python zip() function to iterate over two lists? This tutorial teaches you exactly what the zip() function does and shows you some creative ways to use the function.

Replace a Particular Value in a List in Python Using a For Loop

Python lists allow us to easily also modify particular values. One way that we can do this is by using a for loop.

One of the key attributes of Python lists is that they can contain duplicate values. Because of this, we can loop over each item in the list and check its value. If the value is one we want to replace, then we replace it.

Let’s see what this looks like. In our list, the word apple is misspelled. We want to replace the misspelled version with the corrected version.

# Replace a particular item in a Python list a_list = ['aple', 'orange', 'aple', 'banana', 'grape', 'aple'] for i in range(len(a_list)): if a_list[i] == 'aple': a_list[i] = 'apple' print(a_list) # Returns: ['apple', 'orange', 'apple', 'banana', 'grape', 'apple']

Let’s take a look at what we’ve done here:

  1. We loop over each index in the list
  2. If the index position of the list is equal to the item we want to replace, we re-assign its value

In the next section, you’ll learn how to turn this for loop into a Python list comprehension.

Want to learn more about Python for-loops? Check out my in-depth tutorial that takes your from beginner to advanced for-loops user! Want to watch a video instead? Check out my YouTube tutorial here.

Replace a Particular Value in a List in Python Using a List Comprehension

One of the key attributes of Python list comprehensions is that we can often turn for loops into much shorter comprehensions. Let’s see how we can use a list comprehension in Python to replace an item in a list.

We’ll use the same example we used in the for loop, to help demonstrate how elegant a Python list comprehension can be:

# Replace a particular item in a Python list using a list comprehension a_list = ['aple', 'orange', 'aple', 'banana', 'grape', 'aple'] a_list = ['apple' if item == 'aple' else item for item in a_list] print(a_list) # Returns: ['apple', 'orange', 'apple', 'banana', 'grape', 'apple']

We can see here that there are two main benefits of list comprehensions compared to for loops:

  1. We don’t need to initialize an empty list
  2. The comprehension reads in a relatively plain English

In the next section, you’ll learn how to change all values in a list using a formula.

Want to learn more about Python list comprehensions? Check out this in-depth tutorial that covers off everything you need to know, with hands-on examples. More of a visual learner, check out my YouTube tutorial here.

Change All Values in a List in Python Using a Function

Neither of the approaches above are immediately clear as to what they are doing. Because of this, developing a formula to do this is a helpful approach to help readers of your code understand what it is you’re doing.

Let’s take a look at how we can use the list comprehension approach and turn it into a formula:

# Replace a particular item in a Python list using a function a_list = ['aple', 'orange', 'aple', 'banana', 'grape', 'aple'] def replace_values(list_to_replace, item_to_replace, item_to_replace_with): return [item_to_replace_with if item == item_to_replace else item for item in list_to_replace] replaced_list = replace_values(a_list, 'aple', 'apple') print(replaced_list) # Returns: ['apple', 'orange', 'apple', 'banana', 'grape', 'apple']

Here, we simply need to pass in the list, the item we want to replace, and the item we want to replace it with. The function name makes it easy to understand what we’re doing, guiding our readers to better understand our actions.

In the next section, you’ll learn how to replace multiple values in a Python list.

Replace Multiple Values in a Python List

There may be many times when you want to replace not just a single item, but multiple items. This can be done quite simply using the for loop method shown earlier.

Let’s take a look at an example where we want to replace all known typos in a list with the word typo .

# Replace multiple items in a Python list with the same value a_list = ['aple', 'ornge', 'aple', 'banana', 'grape', 'aple'] for i in range(len(a_list)): if a_list[i] in ['aple', 'ornge']: a_list[i] = 'typo' print(a_list) # Returns: ['typo', 'typo', 'typo', 'banana', 'grape', 'typo']

Similar to the for loop method shown earlier, we check whether or not an item is a typo or not and replace its value.

In the next section, you’ll learn how to replace multiple values in a Python list with different values.

Replace Multiple Values with Multiple Values in a Python List

The approach above is helpful if we want to replace multiple values with the same value. There may be times where you want to replace multiple values with different values.

Looking again at our example, we may want to replace all instances of our typos with their corrected spelling. We can again use a for loop to illustrate how to do this.

Instead of using a single if statement, we’ll nest in some elif statements that check for a value’s value before replacing.

# Replace multiple items in a Python list with the different values a_list = ['aple', 'ornge', 'aple', 'banana', 'grape', 'aple'] for i in range(len(a_list)): if a_list[i] == 'aple': a_list[i] = 'apple' elif a_list[i] == 'ornge': a_list[i] = 'orange' print(a_list) # Returns: ['apple', 'orange', 'apple', 'banana', 'grape', 'apple']

Need to check if a key exists in a Python dictionary? Check out this tutorial, which teaches you five different ways of seeing if a key exists in a Python dictionary, including how to return a default value.

Conclusion

In this tutorial, you learned how to use Python to replace items in a list. You learned how to use Python to replace an item at a particular index, how to replace a particular value, how to modify all values in a list, and how to replace multiple values in a list.

To learn more about Python list indexing, check out the official documentation here.

Additional Resources

To learn more about related topics, check out the tutorials below:

Источник

Python — Change List Items

To change the value of a specific item, refer to the index number:

Example

Change a Range of Item Values

To change the value of items within a specific range, define a list with the new values, and refer to the range of index numbers where you want to insert the new values:

Example

Change the values «banana» and «cherry» with the values «blackcurrant» and «watermelon»:

thislist = [«apple», «banana», «cherry», «orange», «kiwi», «mango»]
thislist[1:3] = [«blackcurrant», «watermelon»]
print(thislist)

If you insert more items than you replace, the new items will be inserted where you specified, and the remaining items will move accordingly:

Example

Change the second value by replacing it with two new values:

thislist = [«apple», «banana», «cherry»]thislist[1:2] = [«blackcurrant», «watermelon»]print(thislist)

Note: The length of the list will change when the number of items inserted does not match the number of items replaced.

If you insert less items than you replace, the new items will be inserted where you specified, and the remaining items will move accordingly:

Example

Change the second and third value by replacing it with one value:

Insert Items

To insert a new list item, without replacing any of the existing values, we can use the insert() method.

The insert() method inserts an item at the specified index:

Example

Insert «watermelon» as the third item:

Note: As a result of the example above, the list will now contain 4 items.

Источник

Оцените статью