Skip to content
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
112 changes: 96 additions & 16 deletions 02_activities/assignments/assignment_1.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -56,32 +56,70 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 73,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Silent and listen are anagrams!\n"
]
}
],
"source": [
"# For testing purposes, we will write our code in the function\n",
"def anagram_checker(word_a, word_b):\n",
" # Your code here\n",
" #Create sets from letters in each word and convert all to lowercase\n",
" word_1 = word_a.lower()\n",
" word_2 = word_b.lower()\n",
" first_word = set()\n",
" second_word = set() \n",
" for letter in word_1:\n",
" first_word.add(letter)\n",
" for letter in word_2:\n",
" second_word.add(letter)\n",
"\n",
"#Compare sets to determine if the words use the same letters. Also ensure words are the same length in case letters are repeated.\n",
" if first_word == second_word and len(word_a) == len(word_b):\n",
" print(f'{word_a} and {word_b} are anagrams!')\n",
" else:\n",
" print(f'{word_a} and {word_b} are not anagrams!')\n",
"\n",
"# Run your code to check using the words below:\n",
"anagram_checker(\"Silent\", \"listen\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 51,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"silent and night are not anagrams!\n"
]
}
],
"source": [
"anagram_checker(\"Silent\", \"Night\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 52,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"night and thing are anagrams!\n"
]
}
],
"source": [
"anagram_checker(\"night\", \"Thing\")"
]
Expand All @@ -97,31 +135,73 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 74,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Silent and listen are anagrams!\n"
]
}
],
"source": [
"def anagram_checker(word_a, word_b, is_case_sensitive):\n",
" # Modify your existing code here\n",
"#Create sets from letters in each word and convert all to lowercase if not case sensitive\n",
" if is_case_sensitive == False:\n",
" word_1 = word_a.lower()\n",
" word_2 = word_b.lower()\n",
" else:\n",
" word_1 = word_a\n",
" word_2 = word_b\n",
" first_word = set()\n",
" second_word = set() \n",
" for letter in word_1:\n",
" first_word.add(letter)\n",
" for letter in word_2:\n",
" second_word.add(letter)\n",
"\n",
"#Compare sets to determine if the words use the same letters. Also ensure words are the same length in case letters are repeated.\n",
" if first_word == second_word and len(word_a) == len(word_b):\n",
" print(f'{word_a} and {word_b} are anagrams!')\n",
" else:\n",
" print(f'{word_a} and {word_b} are not anagrams!')\n",
"\n",
"# Run your code to check using the words below:\n",
"anagram_checker(\"Silent\", \"listen\", False) # True"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 75,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Silent and listen are not anagrams!\n"
]
}
],
"source": [
"anagram_checker(\"Silent\", \"listen\", True) # False"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 76,
"metadata": {},
"outputs": [],
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Silent and Listen are not anagrams!\n"
]
}
],
"source": [
"anagram_checker(\"Silent\", \"Listen\", True) # False"
]
Expand All @@ -139,7 +219,7 @@
],
"metadata": {
"kernelspec": {
"display_name": "new-learner",
"display_name": "python-env",
"language": "python",
"name": "python3"
},
Expand All @@ -153,7 +233,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.8"
"version": "3.11.15"
}
},
"nbformat": 4,
Expand Down