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
124 changes: 99 additions & 25 deletions 02_activities/assignments/assignment_1.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@
"\n",
"Examples of anagrams:\n",
"* Silent and Listen\n",
"* Night and Thing\n",
"* Night and Think\n",
"\n",
"Example outputs:\n",
"```python\n",
Expand All @@ -56,32 +56,75 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 52,
"metadata": {},
"outputs": [],
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 52,
"metadata": {},
"output_type": "execute_result"
}
],
"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",
" # ASSUMPTIONS: \n",
" # word_a and word_b are strings\n",
"\n",
" # sort the characters of both words to check if both words are anagrams of each other\n",
" # using .lower() assumes that the uppercase letters are the same as the lowercase characters\n",
" if sorted(word_a.lower()) == sorted(word_b.lower()):\n",
" return True \n",
" else:\n",
" return False\n",
" \n",
" \n",
"\n",
"# Run your code to check using the words below:\n",
"anagram_checker(\"Silent\", \"listen\")"
"anagram_checker(\"Silent\", \"listen\")\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 53,
"metadata": {},
"outputs": [],
"outputs": [
{
"data": {
"text/plain": [
"False"
]
},
"execution_count": 53,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"anagram_checker(\"Silent\", \"Night\")"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 54,
"metadata": {},
"outputs": [],
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 54,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"anagram_checker(\"night\", \"Thing\")"
]
Expand All @@ -97,31 +140,62 @@
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 55,
"metadata": {},
"outputs": [],
"outputs": [
{
"data": {
"text/plain": [
"True"
]
},
"execution_count": 55,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"def anagram_checker(word_a, word_b, is_case_sensitive):\n",
" # Modify your existing code here\n",
" # ASSUMPTIONS: \n",
" # word_a and word_b are strings\n",
" # is_case_sensitive argument is True if we should treat uppercase letters \n",
" # different than lowercase characters or False otherwise\n",
" if is_case_sensitive == True:\n",
" # sort the characters of both words to check if both words are anagrams of each other\n",
" # but we assume that the uppercase letters are different than the lowercase characters \n",
" if sorted(word_a) == sorted(word_b):\n",
" return True \n",
" else:\n",
" return False\n",
" else:\n",
" # sort the characters of both words to check if both words are anagrams of each other\n",
" # using .lower() assumes that the uppercase letters are the same as the lowercase characters\n",
" if sorted(word_a.lower()) == sorted(word_b.lower()):\n",
" return True \n",
" else:\n",
" return False\n",
" \n",
"\n",
"# Run your code to check using the words below:\n",
"anagram_checker(\"Silent\", \"listen\", False) # True"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"anagram_checker(\"Silent\", \"listen\", True) # False"
]
},
{
"cell_type": "code",
"execution_count": null,
"execution_count": 56,
"metadata": {},
"outputs": [],
"outputs": [
{
"data": {
"text/plain": [
"False"
]
},
"execution_count": 56,
"metadata": {},
"output_type": "execute_result"
}
],
"source": [
"anagram_checker(\"Silent\", \"Listen\", True) # False"
]
Expand All @@ -139,7 +213,7 @@
],
"metadata": {
"kernelspec": {
"display_name": "new-learner",
"display_name": "python-env",
"language": "python",
"name": "python3"
},
Expand All @@ -153,7 +227,7 @@
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.11.8"
"version": "3.11.14"
}
},
"nbformat": 4,
Expand Down