Answer to Question #252372 in Python for Raymond Ekwubiri

Question #252372
Write a loop over the strings in list test_miss and call missing_letters with each string. Print a line for each string listing the missing letters. For example, for the string "aaa", the output should be the following.

aaa is missing letters bcdefghijklmnopqrstuvwxyz

If the string has all the letters in alphabet, the output should say it uses all the letters. For example, the output for the string alphabet itself would be the following.

abcdefghijklmnopqrstuvwxyz uses all the letters

Print a line like one of the above for each of the strings in test_miss.

Submit your Python program. It should include the following.

The provided code for alphabet, test_dups, test_miss, and histogram.
Your implementation of the has_duplicates function.
A loop that outputs duplicate information for each string in test_dups.
Your implementation of the missing_letters function.
A loop that outputs missing letters for each string in test_miss
1
Expert's answer
2021-10-19T00:50:02-0400
alphabet = "abcdefghijklmnopqrstuvwxyz"
test_dups = ["zzz","dog","bookkeeper","subdermatoglyphic","subdermatoglyphics"]
test_miss = ["zzz","subdermatoglyphic","the quick brown fox jumps over the lazy dog"]

def histogram(s):
  d = dict()
  for c in s:
    if c not in d:
      d[c] = 1
    else:
      d[c] += 1
  return d

def has_duplicates(s):
  # Return False if each letter in s is not distinct
  return len(histogram(s)) != len(s)

def missing_letters(s):
  h = histogram(s)
  rv = ''
  # Loop over letters in alphabet, if the letter is not in the histogram then
  # append to the return string.
  for c in alphabet:
    if c not in h:
      rv = rv + c
  return rv

# Loop over test strings as required.
for s in test_miss:
  miss = missing_letters(s)
  if miss:
    print(f"{s} is missing letters {miss}.")
  else:
    print(f"{s} uses all the letters.")

Need a fast expert's response?

Submit order

and get a quick answer at the best price

for any assignment or question with DETAILED EXPLANATIONS!

Comments

No comments. Be the first!

Leave a comment

LATEST TUTORIALS
New on Blog
APPROVED BY CLIENTS