# Solution Exercise 35: python algorithm which determines the list of words containing at least one number and one uppercase

May 21, 2021 #### Exercise 35

Write a python algorithm as a function which takes as parameter a string text T and which returns the list of words containing at least one number and one capital letter. Example: if T = ‘Python2.7 has been replaced by Python3.X since 2018’, the algorithm return: [‘Python2.7’, ‘Python3.X’]

#### Solution

``# creating a function which calculates the number of digits on a stringdef number_digit (s):    # initialization of the number of digits    nbrDigit = 0    for x in s:        if x.isdigit ():            nbrDigit = nbrDigit + 1    return nbrDigit# creation of a function which calculates the number of capital letters in a stringdef number_maj (s):    # initializing the number of capitals    nbrMaj = 0    for x in s:        if x.isupper ():            nbrMaj = nbrMaj + 1    return nbrMaj    # creating a function which returns the list of words containing at least one number and one uppercasedef listMajDigits (s):    # initialization of the searched words list    listWord = []    # convert string s to a list    L = s.split ()    for word in L:        if number_digit (word)> 0 and number_maj (word)> 0:            listWord.append (word)    return listWord# ExampleT = "Python2.7 has been replaced by Python3.X since 2018"print (listMajDigits (T)) # the output is: ['Python2.7', 'Python3.X']``
Younes Derfoufi
my-courses.net