Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to know if a list has an even or odd number of elements

How can I find out if there is even, or odd, number of elements in an arbitrary list.

I tried list.index() to get all of the indices... but I still don't know how I can tell the program what is an even and what is an odd number.

like image 529
user3029969 Avatar asked Jan 22 '26 03:01

user3029969


2 Answers

You can use the built in function len() for this.

Python Doc -- len()

Gets the length (# of elements) of any arbitrary list.

myList = [0,1,2,3,4,5]

if len(myList) % 2 == 0:
    print ("even")
else
    print ("odd")

Define function that returns a bool (true or false).

def is_even(myList):

    if len(myList) % 2 == 0:
        return true
    else:
        return false

main():

    myList = [0,1,2,3]
    theListIsEven = is_even(myList)  # will be true in this example
                                     # because 4 items in myList

    if theListIsEven(myList) == True:
        # do something
    else:
        # do something else

    return 0

The modulus operator % gives the remainder.

EX: 7 % 2 = 1

  • Closest number to 7 that 2 will divide evenly is 6
  • Which is 1 away from 7.
  • Thus, remainder of 1 for 7 % 2.

EX: 4 % 2 = 0

  • Any even number n will give 0 as the remainder when n % 2
  • Because n has divided evenly by 2
like image 145
ma77c Avatar answered Jan 23 '26 17:01

ma77c


All you need is

len(listName)

Which will give you the length.

I guess you could also do this then

if len(listName) % 2 == 0:
    return True  # the number is even!
else:
    return False # the number is odd!
like image 21
CRABOLO Avatar answered Jan 23 '26 15:01

CRABOLO



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!