Python len()

The len() function returns the number of items (length) in an object.

Example

languages = ['Python', 'Java', 'JavaScript']

# compute the length of languages length = len(languages)
print(length) # Output: 3

len() Syntax

The syntax of len() is:

len(s)

len() Parameters

The len() function takes a single argument s, which can be

  • sequence - string, bytes, tuple, list, range OR,
  • collection - dictionary, set, frozen set

len() Return Value

len() function returns the number of items of an object.

Failing to pass an argument or passing an invalid argument will raise a TypeError exception.


Example 1: How len() works with tuples, lists and range?

testList = []
print(testList, 'length is', len(testList))
testList = [1, 2, 3] print(testList, 'length is', len(testList)) testTuple = (1, 2, 3)
print(testTuple, 'length is', len(testTuple))
testRange = range(1, 10) print('Length of', testRange, 'is', len(testRange))

Output

[] length is 0
[1, 2, 3] length is 3
(1, 2, 3) length is 3
Length of range(1, 10) is 9

Visit these pages to learn more about:


Example 2: How len() works with strings and bytes?

testString = ''
print('Length of', testString, 'is', len(testString))

testString = 'Python'
print('Length of', testString, 'is', len(testString))
# byte object testByte = b'Python' print('Length of', testByte, 'is', len(testByte)) testList = [1, 2, 3] # converting to bytes object testByte = bytes(testList)
print('Length of', testByte, 'is', len(testByte))

Output

Length of  is 0
Length of Python is 6
Length of b'Python' is 6
Length of b'\x01\x02\x03' is 3

Visit these pages to learn more about:


Example 3: How len() works with dictionaries and sets?

testSet = {1, 2, 3}
print(testSet, 'length is', len(testSet))
# Empty Set testSet = set() print(testSet, 'length is', len(testSet)) testDict = {1: 'one', 2: 'two'}
print(testDict, 'length is', len(testDict))
testDict = {} print(testDict, 'length is', len(testDict)) testSet = {1, 2} # frozenSet frozenTestSet = frozenset(testSet)
print(frozenTestSet, 'length is', len(frozenTestSet))

Output

{1, 2, 3} length is 3
set() length is 0
{1: 'one', 2: 'two'} length is 2
{} length is 0
frozenset({1, 2}) length is 2

Visit these pages to learn more about:


Internally, len() calls the object's __len__ method. You can think of len() as:

def len(s):
    return s.__len__()

So, you can assign custom length to the object (if necessary)


Example 4: How len() works for custom objects?

class Session:
    def __init__(self, number = 0):
      self.number = number
    
    def __len__(self):
      return self.number


# default length is 0
s1 = Session()
print(len(s1))
# giving custom length s2 = Session(6)
print(len(s2))

Output

0
6
Did you find this article helpful?