Python Beginner: A function that tests the sum of two elements in the list

Asked 2 years ago, Updated 2 years ago, 61 views

It's a function that adds two different elements from the list and returns 1 if the value becomes K, otherwise returns -1 No matter what you put in K, only -1 will be returned. Which part should I fix to make it work?

def doublek(myl,k):
       for i in range(len(myl)):
             for j in range(len(myl)-1):
                   if myl[i]+myl[j]==K:
                          return(1)
                   else:
                           return(-1)


myl=[1,3,5,7,9,11,21]

print(doublek(myl,K)).  #If you put anything in K, you get -1.

I don't know if the indentation was done properly because I wrote it on my phone, but I put it in the right indentation in the actual code, so I'd appreciate it if you could tell me where to fix it to work properly.

loops

2022-09-20 18:59

2 Answers

if myl[i]+myl[j]==K: --> if myl[i]+myl[j]==k:


2022-09-20 18:59

You just made the wrong code.

def doublek(myl,K):
       for i in range(len(myl)):
            # # i = 0
             for j in range(len(myl)-1):
                # # j = 0
                   if myl[i]+myl[j]==K:
                        # If k is not 2 because it is 1+1=2, return (-1) and terminate the function
                          return(1)
                   else:
                           return(-1)


myl=[1,3,5,7,9,11,21]

print(doublek(myl,K))


2022-09-20 18:59

If you have any answers or tips


© 2024 OneMinuteCode. All rights reserved.