curriculum/challenges/english/blocks/daily-coding-challenges-python/68adce01c0e1144d0a90295e.md
Given a string containing one or more words, return an acronym of the words using the following constraints:
a, for, an, and, by, and of.build_acronym("Search Engine Optimization") should return "SEO".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(build_acronym("Search Engine Optimization"), "SEO")`)
}})
build_acronym("Frequently Asked Questions") should return "FAQ".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(build_acronym("Frequently Asked Questions"), "FAQ")`)
}})
build_acronym("National Aeronautics and Space Administration") should return "NASA".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(build_acronym("National Aeronautics and Space Administration"), "NASA")`)
}})
build_acronym("Federal Bureau of Investigation") should return "FBI".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(build_acronym("Federal Bureau of Investigation"), "FBI")`)
}})
build_acronym("For your information") should return "FYI".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(build_acronym("For your information"), "FYI")`)
}})
build_acronym("By the way") should return "BTW".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(build_acronym("By the way"), "BTW")`)
}})
build_acronym("An unstoppable herd of waddling penguins overtakes the icy mountains and sings happily") should return "AUHWPOTIMSH".
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(build_acronym("An unstoppable herd of waddling penguins overtakes the icy mountains and sings happily"), "AUHWPOTIMSH")`)
}})
def build_acronym(s):
return s
def build_acronym(s):
small_words = {"a", "for", "an", "and", "by", "of"}
words = s.split()
acronym = ""
for i, word in enumerate(words):
if i == 0 or word.lower() not in small_words:
acronym += word[0].upper()
return acronym