Skip to content
Related Articles

Related Articles

Improve Article
Python | Solve given list containing numbers and arithmetic operators
  • Last Updated : 29 Mar, 2019

Given a list containing numbers and arithmetic operators, the task is to solve the list.

Example:

Input: lst =  [2, '+', 22, '+', 55, '+', 4]
Output: 83

Input: lst =  [12, '+', 8, '-', 5]
Output: 15

Below are some ways to achieve the above tasks.

Method #1: Using Iteration
We can use iteration as the simplest approach to solve the list with importing different operators.




# Python code to solve the list
# containing numbers and arithmetic operators
  
# Importing
from operator import add, sub
  
# Function to solve list
def find(Input):
    ans = 0
    options = {'+': add, '-': sub}
    option = add 
    for item in Input:
        if item in options:
            option = options[item]
        else:
            number = float(item)
            ans = option(ans, number)
    return ans
  
# Input Initialization
lst = [91, '+', 132, '-', 156, '+', 4]
  
# Calling function
Output = find(lst)
  
# Printing output
print("Initial list", lst)
print("Answer after solving list is:", Output)
Output:



Initial list [91, '+', 132, '-', 156, '+', 4]
Answer after solving list is: 71.0

Method #2: Using eval and join




# Python code to solve the list
# containing numbers and arithmetic operators
  
# Input list initialization
lst =  [2, '+', 22, '+', 55, '+', 4]
  
# Using eval and join
Output = eval(' '.join(str(x) for x in lst))
  
# Printing output
print("Initial list", lst)
print("Answer after solving list is:", Output)
Output:
Initial list [2, '+', 22, '+', 55, '+', 4]
Answer after solving list is: 83

 Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.  

To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course. And to begin with your Machine Learning Journey, join the Machine Learning – Basic Level Course




My Personal Notes arrow_drop_up
Recommended Articles
Page :