Great Deal! Get Instant $10 FREE in Account on First Order + 10% Cashback on Every Order Order Now

{ "cells": [ { "cell_type": "markdown", "metadata": { "deletable": false, "editable": false, "nbgrader": { "cell_type": "markdown", "checksum": "931008c90a6d73bd6743697dc1533e95", "grade": false,...

1 answer below »
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "931008c90a6d73bd6743697dc1533e95",
"grade": false,
"grade_id": "cell-6d8cdb4d261f4009",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"## Week 6 Assignment - W200 Introduction to Data Science Programming, UC Berkeley MIDS\n",
"\n",
"Write code in this Jupyter Notebook to solve each of the following problems. Each problem should have its solution in a separate cell. Please upload this **notebook**, your **scra
le.py** file, the **sowpods.txt** file, and your **score_word** module to your GitHub repository in your SUBMISSIONS/week_06 folder by 11:59PM PST the night before class."
]
},
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "264b353c2fc9950602495e0bea1f3a2d",
"grade": false,
"grade_id": "cell-1ce5f6472d951780",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"## Objectives:\n",
"\n",
"- Read and understand PEP 8 standards\n",
"- Use all of your previously gained knowledge together on a single program\n",
"- Demonstrate how to import a user made module and function into python from another .py file\n",
"- Demonstrate how to input command line arguments into a .py file"
]
},
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "b35ef
1a
71594c805886b92f4a0b2",
"grade": false,
"grade_id": "cell-00008b61981ee041",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"## 6-1. PEP 8 Style Guide (reading and response) (10 points)\n",
"\n",
"Your first task for this week is to write a **250 word reading response** to the article referenced below. In addition, please list **3 questions** that you have from the article (the questions do not count towards the 250 word requirement). Please write your response in the markdown cell below.\n",
"\n",
"The writing response is a free response, so you may write about your reactions, such as an interesting thing that you saw in the article, something that really stuck out to you, etc.\n",
"\n",
"**Article**: [The PEP 8 Style Guide](https:
www.python.org/dev/peps/pep XXXXXXXXXXThis document is really important for Python coders because it describes best practices and customs.\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "8cf1e0fcb247eddcaad7b239e9152c6d",
"grade": true,
"grade_id": "cell-eaae902b022d20da",
"locked": false,
"points": 10,
"schema_version": 3,
"solution": true
}
},
"source": [
"YOUR ANSWER HERE"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true,
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "18851fd7f85
32743556a5b5a005291",
"grade": false,
"grade_id": "cell-b8aa7fa341f74332",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"## 6-2. Cheating at Scra
le (90 points + 10 Extra Credit Points)\n",
"\n",
"Write a Python program that takes a Scra
le rack as a command-line argument and prints all \"valid Scra
le English\" words that can be constructed from that rack, along with their Scra
le scores, sorted by score. \"valid Scra
le English\" words are provided in the data source below. A Scra
le rack is made up of 2 to 7 characters.\n",
"\n",
"Below are the requirements for the program:\n",
"- This needs to be able to be run as a command line tool as shown below (not an input statement!)\n",
"- Name the python file: `scra
le.py`\n",
"- Make a separate module named `wordscore` which contains at a minimum a function called `score_word`. This `score_word` function will take each word and return the score (scoring dictionary is described below). Import this function into your main `scra
le.py` program. \n",
"- Allow anywhere from 2-7 character tiles (letters A-Z) to be inputted. \n",
"- Do not restrict the number of same tiles (e.g., a user is allowed to input ZZZZZQQ).\n",
"- Output the **total** list of valid Scra
le words that can be constructed from the rack as (score, word) tuples, sorted by the score and then by the word alphabetically as shown in the first example below.\n",
"- Then output 'Total number of words:' and the total number.\n",
"- You need to handle input e
ors from the user and suggest what that e
or might be caused by and how to fix it (i.e., a helpful e
or message)\n",
"- Implement wildcards as either `*` or `?`. There can be a total of **only** two wild cards in any user input (that is, one of each character: one `*` and one `?`). Only use the `*` and `?` as wildcard characters. A wildcard character can take any value A-Z. Replace the wildcard symbol with the letter in your answer (see the second example below). \n",
"- Wildcard characters are scored as 0 points, just like in the real Scra
le game. A two wildcard word can be made, should be outputted and scored as 0 points. \n",
" - In a wildcard case where the same word can be made with or without the wildcard, display the highest score. For example: given the input 'I?F', the word 'if' can be made with the wildcard '?F' as well as the letters 'IF'. Since using the letters 'IF' scores higher, display that score.\n",
"- For partial credit, your program should take less than one minute to run with 2 wildcards in the input. For full credit, the program needs to run with 2 wildcards in less than 30 seconds.\n",
"- Write docstrings for the functions and puts comments in your code.\n",
"- You may only use the Python standard li
ary in this assignment. However, any function in the standard li
ary is allowed.\n",
"\n",
"An example invocation and output:\n",
"```\n",
"$ python scra
le.py \"ZAEFIEE\"\n",
"(17, feaze)\n",
"(17, feeze)\n",
"(16, faze)\n",
"(15, fez)\n",
"(15, fiz)\n",
"(12, zea)\n",
"(12, zee)\n",
"(11, za)\n",
"(6, fae)\n",
"(6, fee)\n",
"(6, fie)\n",
"(5, ef)\n",
"(5, fa)\n",
"(5, fe)\n",
"(5, if)\n",
"(2, ae)\n",
"(2, ai)\n",
"(2, ea)\n",
"(2, ee)\n",
"Total number of words: 19\n",
"```\n",
"\n",
"An example wildcard invocation and output:\n",
"```\n",
"$ python scra
le.py \"?F\"\n",
"(4, ef)\n",
"(4, fa)\n",
"(4, fe)\n",
"(4, fy)\n",
"(4, if)\n",
"(4, of)\n",
"Total number of words: 6\n",
"```\n",
"\n",
"#### Extra Credit (+10 points):\n",
"Requirements:\n",
"- Allow a user to specify that a certain letter has to be at a certain location. For the extra credit, locations of certain letters must be specified at the command line, and may not be some sort of user prompt. How you do this is up to you!\n",
"- This needs to be included and called from your regular scra
le.py file and work with the base requirements above. That is, your program must work with or without the extra credit portion and the extra credit cannot be in a different .py file. \n",
"- Please put comments, any assumptions you made, and a sample of how to run your extra credit in the extra credit cell of this notebook below - it is the last cell. If
Answered 1 days After Nov 09, 2021

Solution

Darshan answered on Nov 10 2021
126 Votes
hwunit06-lucas-vszq2dtn.ipyn
{
"cells": [
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "931008c90a6d73bd6743697dc1533e95",
"grade": false,
"grade_id": "cell-6d8cdb4d261f4009",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"## Week 6 Assignment - W200 Introduction to Data Science Programming, UC Berkeley MIDS\n",
"\n",
"Write code in this Jupyter Notebook to solve each of the following problems. Each problem should have its solution in a separate cell. Please upload this **notebook**, your **scra
le.py** file, the **sowpods.txt** file, and your **score_word** module to your GitHub repository in your SUBMISSIONS/week_06 folder by 11:59PM PST the night before class."
]
},
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "264b353c2fc9950602495e0bea1f3a2d",
"grade": false,
"grade_id": "cell-1ce5f6472d951780",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"## Objectives:\n",
"\n",
"- Read and understand PEP 8 standards\n",
"- Use all of your previously gained knowledge together on a single program\n",
"- Demonstrate how to import a user made module and function into python from another .py file\n",
"- Demonstrate how to input command line arguments into a .py file"
]
},
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "b35ef
1a
71594c805886b92f4a0b2",
"grade": false,
"grade_id": "cell-00008b61981ee041",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"## 6-1. PEP 8 Style Guide (reading and response) (10 points)\n",
"\n",
"Your first task for this week is to write a **250 word reading response** to the article referenced below. In addition, please list **3 questions** that you have from the article (the questions do not count towards the 250 word requirement). Please write your response in the markdown cell below.\n",
"\n",
"The writing response is a free response, so you may write about your reactions, such as an interesting thing that you saw in the article, something that really stuck out to you, etc.\n",
"\n",
"**Article**: [The PEP 8 Style Guide](https:
www.python.org/dev/peps/pep-0008). This document is really important for Python coders because it describes best practices and customs.\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "8cf1e0fcb247eddcaad7b239e9152c6d",
"grade": true,
"grade_id": "cell-eaae902b022d20da",
"locked": false,
"points": 10,
"schema_version": 3,
"solution": true
}
},
"source": [
"What is the best code standard style for python?\n",
"How it is help to coder to code python effectively?\n",
"What things you have to understand from PEP 8 Style Guide?\n",
"\n",
"This document gives coding conventions for the Python code comprising the standard li
ary in the main Python distribution.\n",
"1. Use 4-space indentation and no tabs. \n",
"2. Use docstrings. \n",
"3. Wrap strains so they don’t exceed seventy nine characters.Maximum Length of line is 79.\n",
"4. Use of normal and up to date remarks are treasured to each the coders and users. \n",
"5. Use of trailing commas. \n",
"6. Use Python’s default UTF-eight or ASCII encodings and now no longer any fancy encodings, if it is supposed for worldwide environment. \n",
"7. Use areas round operators and after commas, however now no longer at once inner
acketing constructs: \n",
"8. Naming Conventions stated below: \n",
"\tb (unma
ied lowercase letter) \n",
"\tB (unma
ied top case letter) \n",
"\tlowercase \n",
"\tlower_case_with_underscores \n",
"\tUPPERCASE \n",
"\tUPPER_CASE_WITH_UNDERSCORES \n",
"\tCapitalizedWords (or CamelCase). This is likewise from time to time called StudlyCaps.Note: While the use of a
eviations in CapWords, capitalize all of the letters of the a
eviation. Thus HTTPServerE
or is higher than HttpServerE
or. \n",
"\tmixedCase (differs from CapitalizedWords via way of means of preliminary lowercase character!) \n",
"\tCapitalized_Words_With_Underscores eight. Characters that ought to now no longer be used for identifiers \n",
"9. Don’t use non-ASCII characters in identifiers.\n",
"10. Name your training and capabilities consistently.\n",
"11. Imports should usually be on separate lines.\n",
"12. Whitespace in Expressions and Statements.\n",
"13. String Quotes.In Python, single-quoted strings and double-quoted strings are the same.\n",
"14. When to Use Trailing Commas.Trailing commas are usually optional, except they are mandatory when making a tuple of one element. \n",
"15. Paragraphs inside a block comment are separated by a line containing a single #.It supports inline Comments which use inline comments sparingly.\n"
]
},
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "3491807f5936ee993d0a6f7ea761e2fe",
"grade": false,
"grade_id": "cell-d5a08eb52a6c9895",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"### The code below will test your command line implementation of the scra
le.py code. We've made some of these tests available for you to try!"
]
},
{
"cell_type": "markdown",
"metadata": {
"collapsed": true,
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "18851fd7f85
32743556a5b5a005291",
"grade": false,
"grade_id": "cell-b8aa7fa341f74332",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"## 6-2. Cheating at Scra
le (90 points + 10 Extra Credit Points)\n",
"\n",
"Write a Python program that takes a Scra
le rack as a command-line argument and prints all \"valid Scra
le English\" words that can be constructed from that rack, along with their Scra
le scores, sorted by score. \"valid Scra
le English\" words are provided in the data source below. A Scra
le rack is made up of 2 to 7 characters.\n",
"\n",
"Below are the requirements for the program:\n",
"- This needs to be able to be run as a command line tool as shown below (not an input statement!)\n",
"- Name the python file: `scra
le.py`\n",
"- Make a separate module named `wordscore` which contains at a minimum a function called `score_word`. This `score_word` function will take each word and return the score (scoring dictionary is described below). Import this function into your main `scra
le.py` program. \n",
"- Allow anywhere from 2-7 character tiles (letters A-Z) to be inputted. \n",
"- Do not restrict the number of same tiles (e.g., a user is allowed to input ZZZZZQQ).\n",
"- Output the **total** list of valid Scra
le words that can be constructed from the rack as (score, word) tuples, sorted by the score and then by the word alphabetically as shown in the first example below.\n",
"- Then output 'Total number of words:' and the total number.\n",
"- You need to handle input e
ors from the user and suggest what that e
or might be caused by and how to fix it (i.e., a helpful e
or message)\n",
"- Implement wildcards as either `*` or `?`. There can be a total of **only** two wild cards in any user input (that is, one of each character: one `*` and one `?`). Only use the `*` and `?` as wildcard characters. A wildcard character can take any value A-Z. Replace the wildcard symbol with the letter in your answer (see the second example below). \n",
"- Wildcard characters are scored as 0 points, just like in the real Scra
le game. A two wildcard word can be made, should be outputted and scored as 0 points. \n",
" - In a wildcard case where the same word can be made with or without the wildcard, display the highest score. For example: given the input 'I?F', the word 'if' can be made with the wildcard '?F' as well as the letters 'IF'. Since using the letters 'IF' scores higher, display that score.\n",
"- For partial credit, your program should take less than one minute to run with 2 wildcards in the input. For full credit, the program needs to run with 2 wildcards in less than 30 seconds.\n",
"- Write docstrings for the functions and puts comments in your code.\n",
"- You may only use the Python standard li
ary in this assignment. However, any function in the standard li
ary is allowed.\n",
"\n",
"An example invocation and output:\n",
"```\n",
"$ python scra
le.py \"ZAEFIEE\"\n",
"(17, feaze)\n",
"(17, feeze)\n",
"(16, faze)\n",
"(15, fez)\n",
"(15, fiz)\n",
"(12, zea)\n",
"(12, zee)\n",
"(11, za)\n",
"(6, fae)\n",
"(6, fee)\n",
"(6, fie)\n",
"(5, ef)\n",
"(5, fa)\n",
"(5, fe)\n",
"(5, if)\n",
"(2, ae)\n",
"(2, ai)\n",
"(2, ea)\n",
"(2, ee)\n",
"Total number of words: 19\n",
"```\n",
"\n",
"An example wildcard invocation and output:\n",
"```\n",
"$ python scra
le.py \"?F\"\n",
"(4, ef)\n",
"(4, fa)\n",
"(4, fe)\n",
"(4, fy)\n",
"(4, if)\n",
"(4, of)\n",
"Total number of words: 6\n",
"```\n",
"\n",
"#### Extra Credit (+10 points):\n",
"Requirements:\n",
"- Allow a user to specify that a certain letter has to be at a certain location. For the extra credit, locations of certain letters must be specified at the command line, and may not be some sort of user prompt. How you do this is up to you!\n",
"- This needs to be included and called from your regular scra
le.py file and work with the base requirements above. That is, your program must work with or without the extra credit portion and the extra credit cannot be in a different .py file. \n",
"- Please put comments, any assumptions you made, and a sample of how to run your extra credit in the extra credit cell of this notebook below - it is the last cell. If there is not an example of how to run the extra credit in this cell we will assume that you did not do the extra credit part!\n",
"\n",
"#### The Data\n",
"The file: http:
courses.cms.caltech.edu/cs11/material/advjava/lab1/sowpods.zip or https:
drive.google.com/file/d/1ewUiZL_4HanCDsaYB5pcKEgqjMFVgGnh/view?usp=sharing contains all \"valid Scra
le English\" words in the official words list, one word per line. You should download the word file and keep it in your repository so that the program is standalone (instead of accessing it over the web from Python).\n",
"\n",
"You can read data from a text file with the following code:\n",
"```\n",
"with open(\"sowpods.txt\",\"r\") as infile:\n",
" raw_input = infile.readlines()\n",
" data = [datum.strip('\\n') for datum in raw_input]\n",
"```\n",
"\n",
"This will show the first 6 words:\n",
"```\n",
"print(data[0:6])\n",
"```\n",
"Please use the dictionary below containing the letters and their Scra
le values:\n",
"```\n",
"scores = {\"a\": 1, \"c\": 3, \"b\": 3, \"e\": 1, \"d\": 2, \"g\": 2,\n",
" \"f\": 4, \"i\": 1, \"h\": 4, \"k\": 5, \"j\": 8, \"m\": 3,\n",
" \"l\": 1, \"o\": 1, \"n\": 1, \"q\": 10, \"p\": 3, \"s\": 1,\n",
" \"r\": 1, \"u\": 1, \"t\": 1, \"w\": 4, \"v\": 4, \"y\": 4,\n",
" \"x\": 8, \"z\": 10}\n",
"```\n",
"\n",
"#### Tips:\n",
"- If you don't know what \"scra
le\" is or the basic background of the game please look it up online!\n",
"- We recommend that you try to
eak down the problem into steps on your own before writing any code. Once you've scoped generally what you want to do, then start writing some code. If you get stuck, go back to thinking about the problem rather than trying to fix lots of e
ors at the code level.\n",
"- If you have questions on getting arguments from the command line, please review async video 6.17 and Drill 6.18.\n",
"- If you keep getting stuck, then check out: https:
wiki.openhatch.org/wiki/Scra
le_challenge or https:
drive.google.com/file/d/1g3yz5ljkzaAeQ-AgQR1Hofy8ZJ0jo25x/view?usp=sharing. This is where we got the idea for this assignment and it provides some helpful tips for guiding you along the way. However, we would recommend that you try to implement this first before looking at the hints on the website.\n",
"\n",
"Good luck!"
]
},
{
"cell_type": "code",
"execution_count": 1,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "5bc2edfe9c69d0d266287d7754a5d763",
"grade": false,
"grade_id": "cell-f28d35b358dd64d9",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"outputs": [
{
"ename": "ModuleNotFoundE
or",
"evalue": "No module named 'nose'",
"output_type": "e
or",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mModuleNotFoundE
or\u001b[0m Traceback (most recent call last)",
"\u001b[1;32mC:\\Users\\DARSHA~1\\AppData\\Local\\Temp/ipykernel_4788/2303222999.py\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 2\u001b[0m \u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 3\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0msubprocess\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m----> 4\u001b[1;33m \u001b[1;32mfrom\u001b[0m \u001b[0mnose\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mtools\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0massert_equal\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m\u001b[0;32m 5\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0mnose\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mtools\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0massert_true\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 6\u001b[0m \u001b[1;32mfrom\u001b[0m \u001b[0mnose\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mtools\u001b[0m \u001b[1;32mimport\u001b[0m \u001b[0massert_greater\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n",
"\u001b[1;31mModuleNotFoundE
or\u001b[0m: No module named 'nose'"
]
}
],
"source": [
"# Code for the testing\n",
"\n",
"import subprocess\n",
"from nose.tools import assert_equal \n",
"from nose.tools import assert_true\n",
"from nose.tools import assert_greater\n",
"from nose.tools import assert_less"
]
},
{
"cell_type": "code",
"execution_count": 2,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "aeb5b5c9be0b7da46cc28b2e9cf40188",
"grade": true,
"grade_id": "cell-afe085b138053602",
"locked": true,
"points": 3,
"schema_version": 3,
"solution": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Please provide scra
le input: python scra
le.py XXXXX\n"
]
}
],
"source": [
"\"\"\" Code runs and can produce at least one e
or message \"\"\"\n",
"# Autograde cell - do not erase/delete\n",
"\n",
"# no rack e
or\n",
"!python scra
le.py "
]
},
{
"cell_type": "code",
"execution_count": 3,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "d8a0b5ba3bae4fda30e7106e5e533714",
"grade": true,
"grade_id": "cell-75530651c7f494f0",
"locked": true,
"points": 3,
"schema_version": 3,
"solution": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['AA', 'AAH', 'AAHED', 'AAHING', 'AAHS', 'AAL']\n",
"(10,penguin)\n",
"(9,pening)\n",
"(8,genip)\n",
"(8,unpeg)\n",
"(7,ingenu)\n",
"(7,penni)\n",
"(7,ping)\n",
"(7,pung)\n",
"(7,unpen)\n",
"(7,unpin)\n",
"(6,gip)\n",
"(6,gup)\n",
"(6,peg)\n",
"(6,pein)\n",
"(6,peni)\n",
"(6,pig)\n",
"(6,pine)\n",
"(6,pug)\n",
"(5,ennui)\n",
"(5,genu)\n",
"(5,gien)\n",
"(5,ginn)\n",
"(5,nep)\n",
"(5,nip)\n",
"(5,pen)\n",
"(5,pie)\n",
"(5,pin)\n",
"(5,piu)\n",
"(5,pun)\n",
"(4,eng)\n",
"(4,gen)\n",
"(4,gie)\n",
"(4,gin)\n",
"(4,gnu)\n",
"(4,gue)\n",
"(4,gun)\n",
"(4,neg)\n",
"(4,nine)\n",
"(4,pe)\n",
"(4,pi)\n",
"(4,up)\n",
"(3,gi)\n",
"(3,gu)\n",
"(3,inn)\n",
"(3,nie)\n",
"(3,nun)\n",
"(3,ug)\n",
"(3,uni)\n",
"(2,en)\n",
"(2,in)\n",
"(2,ne)\n",
"(2,nu)\n",
"(2,un)\n",
"Total number of words: 53\n"
]
}
],
"source": [
"\"\"\" Does not fail due to trivial mistakes and takes co
ect wildcard characters \"\"\"\n",
"# Autograde cell - do not erase/delete\n",
"\n",
"# does not fail due to case\n",
"!python scra
le.py \"PENguin\""
]
},
{
"cell_type": "code",
"execution_count": 4,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "11e7c05d7003e6c6cb92accb4b2aaff8",
"grade": true,
"grade_id": "cell-70e47257819da62a",
"locked": true,
"points": 0,
"schema_version": 3,
"solution": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['AA', 'AAH', 'AAHED', 'AAHING', 'AAHS', 'AAL']\n",
"(21,ziz)\n",
"(19,jiz)\n",
"(19,zex)\n",
"(18,jinx)\n",
"(18,phenix)\n",
"(18,phiz)\n",
"(18,zinke)\n",
"(17,benzin)\n",
"(17,hizen)\n",
"(17,pized)\n",
"(17,pyxie)\n",
"(17,winze)\n",
"(17,wizen)\n",
"(16,equip)\n",
"(16,mizen)\n",
"(16,peize)\n",
"(16,piezo)\n",
"(16,pique)\n",
"(16,pixy)\n",
"(16,pizes)\n",
"(16,prize)\n",
"(16,unzip)\n",
"(16,zek)\n",
"(16,zineb)\n",
"(15,bize)\n",
"(15,dizen)\n",
"(15,enfix)\n",
"(15,enzian)\n",
"(15,fez)\n",
"(15,fiz)\n",
"(15,jenny)\n",
"(15,jimp)\n",
"(15,jink)\n",
"(15,meninx)\n",
"(15,pinkey)\n",
"(15,pize)\n",
"(15,prez)\n",
"(15,pyx)\n",
"(15,quep)\n",
"(15,quip)\n",
"(15,vixen)\n",
"(15,wiz)\n",
"(15,zeps)\n",
"(15,zinc)\n",
"(15,zips)\n",
"(14,azine)\n",
"(14,bez)\n",
"(14,biz)\n",
"(14,jive)\n",
"(14,kex)\n",
"(14,kippen)\n",
"(14,mixen)\n",
"(14,miz)\n",
"(14,nixy)\n",
"(14,pikey)\n",
"(14,pinky)\n",
"(14,pixel)\n",
"(14,pixes)\n",
"(14,pixie)\n",
"(14,poz)\n",
"(14,punji)\n",
"(14,quine)\n",
"(14,xenic)\n",
"(14,zap)\n",
"(14,zeins)\n",
"(14,zep)\n",
"(14,zines)\n",
"(14,zing)\n",
"(14,zip)\n",
"(13,apex)\n",
"(13,benj)\n",
"(13,djinn)\n",
"(13,enjoin)\n",
"(13,exing)\n",
"(13,expo)\n",
"(13,fix)\n",
"(13,hex)\n",
"(13,hippen)\n",
"(13,ibex)\n",
"(13,index)\n",
"(13,jape)\n",
"(13,jeep)\n",
"(13,jew)\n",
"(13,jibe)\n",
"(13,jinnee)\n",
"(13,jupe)\n",
"(13,kype)\n",
"(13,minx)\n",
"(13,naze)\n",
"(13,nazi)\n",
"(13,nixed)\n",
"(13,pfennig)\n",
"(13,phenic)\n",
"(13,pinked)\n",
"(13,pinkens)\n",
"(13,plex)\n",
"(13,prex)\n",
"(13,quin)\n",
"(13,size)\n",
"(13,vex)\n",
"(13,wex)\n",
"(13,wippen)\n",
"(13,yex)\n",
"(13,zed)\n",
"(13,zein)\n",
"(13,zig)\n",
"(13,zine)\n",
"(13,zins)\n",
"(13,zite)\n",
"(13,zone)\n",
"(12,annex)\n",
"(12,djin)\n",
"(12,exine)\n",
"(12,hype)\n",
"(12,jap)\n",
"(12,jedi)\n",
"(12,jib)\n",
"(12,jinne)\n",
"(12,jinni)\n",
"(12,jinns)\n",
"(12,kemp)\n",
"(12,kike)\n",
"(12,kink)\n",
"(12,kipp)\n",
"(12,knife)\n",
"(12,knive)\n",
"(12,lez)\n",
"(12,mix)\n",
"(12,napkin)\n",
"(12,ninja)\n",
"(12,nippy)\n",
"(12,nixer)\n",
"(12,nixes)\n",
"(12,nixie)\n",
"(12,pax)\n",
"(12,peck)\n",
"(12,pekins)\n",
"(12,perkin)\n",
"(12,phew)\n",
"(12,pick)\n",
"(12,piked)\n",
"(12,pinch)\n",
"(12,pinken)\n",
"(12,pinker)\n",
"(12,pinkie)\n",
"(12,pix)\n",
"(12,pox)\n",
"(12,punkie)\n",
"(12,punkin)\n",
"(12,pyeing)\n",
"(12,pyning)\n",
"(12,qis)\n",
"(12,rez)\n",
"(12,riz)\n",
"(12,sez)\n",
"(12,spinney)\n",
"(12,whip)\n",
"(12,xenia)\n",
"(12,xenon)\n",
"(12,zea)\n",
"(12,zee)\n",
"(12,zel)\n",
"(12,zin)\n",
"(12,zit)\n",
"(11,bicep)\n",
"(11,chip)\n",
"(11,dex)\n",
"(11,exit)\n",
"(11,exon)\n",
"(11,fenny)\n",
"(11,fike)\n",
"(11,fink)\n",
"(11,finny)\n",
"(11,hemp)\n",
"(11,henny)\n",
"(11,hike)\n",
"(11,hinny)\n",
"(11,hyp)\n",
"(11,ilex)\n",
"(11,impend)\n",
"(11,inky)\n",
"(11,jane)\n",
"(11,jann)\n",
"(11,jean)\n",
"(11,jeon)\n",
"(11,jig)\n",
"(11,jinn)\n",
"(11,jins)\n",
"(11,join)\n",
"(11,kepis)\n",
"(11,kief)\n",
"(11,kipes)\n",
"(11,knew)\n",
"(11,kyne)\n",
"(11,minke)\n",
"(11,next)\n",
"(11,nipped)\n",
"(11,nixe)\n",
"(11,oxen)\n",
"(11,pech)\n",
"(11,pekan)\n",
"(11,pekin)\n",
"(11,pending)\n",
"(11,penks)\n",
"(11,perfin)\n",
"(11,pigpen)\n",
"(11,piker)\n",
"(11,pikes)\n",
"(11,pinbone)\n",
"(11,pinery)\n",
"(11,pinko)\n",
"(11,pinks)\n",
"(11,pinnace)\n",
"(11,pinyin)\n",
"(11,pinyon)\n",
"(11,pioney)\n",
"(11,pipy)\n",
"(11,plink)\n",
"(11,pokie)\n",
"(11,pownie)\n",
"(11,prink)\n",
"(11,pyic)\n",
"(11,pyned)\n",
"(11,qi)\n",
"(11,spike)\n",
"(11,spink)\n",
"(11,spinny)\n",
"(11,veiny)\n",
"(11,vinew)\n",
"(11,wenny)\n",
"(11,whine)\n",
"(11,wimp)\n",
"(11,winey)\n",
"(11,wink)\n",
"(11,wiped)\n",
"(11,yike)\n",
"(11,ympe)\n",
"(11,za)\n",
"(11,zo)\n",
"(10,apneic)\n",
"(10,axe)\n",
"(10,benny)\n",
"(10,bike)\n",
"(10,bink)\n",
"(10,binmen)\n",
"(10,biped)\n",
"(10,chine)\n",
"(10,dynein)\n",
"(10,eking)\n",
"(10,enlink)\n",
"(10,envy)\n",
"(10,enwind)\n",
"(10,ewk)\n",
"(10,exo)\n",
"(10,fief)\n",
"(10,fife)\n",
"(10,finned)\n",
"(10,five)\n",
"(10,hemin)\n",
"(10,hewn)\n",
"(10,hive)\n",
"(10,hyen)\n",
"(10,imped)\n",
"(10,impone)\n",
"(10,inbye)\n",
"(10,incept)\n",
"(10,inked)\n",
"(10,jai)\n",
"(10,jee)\n",
"(10,jet)\n",
"(10,jeu)\n",
"(10,jin)\n",
"(10,joe)\n",
"(10,jun)\n",
"(10,keep)\n",
"(10,kef)\n",
"(10,kelp)\n",
"(10,kepi)\n",
"(10,keps)\n",
"(10,kept)\n",
"(10,key)\n",
"(10,khi)\n",
"(10,kibe)\n",
"(10,kif)\n",
"(10,kilp)\n",
"(10,kinone)\n",
"(10,kipe)\n",
"(10,kips)\n",
"(10,knap)\n",
"(10,knop)\n",
"(10,kye)\n",
"(10,lex)\n",
"(10,lippen)\n",
"(10,meiny)\n",
"(10,mike)\n",
"(10,mink)\n",
"(10,minny)\n",
"(10,mispen)\n",
"(10,nappie)\n",
"(10,neaping)\n",
"(10,neck)\n",
"(10,newing)\n",
"(10,niche)\n",
"(10,nick)\n",
"(10,niff)\n",
"(10,nipper)\n",
"(10,nipple)\n",
"(10,nix)\n",
"(10,nox)\n",
"(10,opening)\n",
"(10,paik)\n",
"(10,paven)\n",
"(10,pavin)\n",
"(10,peak)\n",
"(10,peaning)\n",
"(10,pectin)\n",
"(10,peek)\n",
"(10,peening)\n",
"(10,pegh)\n",
"(10,peinct)\n",
"(10,peining)\n",
"(10,peke)\n",
"(10,pencil)\n",
"(10,penguin)\n",
"(10,penk)\n",
"(10,penman)\n",
"(10,penmen)\n",
"(10,pennied)\n",
"(10,penning)\n",
"(10,penny)\n",
"(10,peony)\n",
"(10,pepino)\n",
"(10,pepsin)\n",
"(10,perk)\n",
"(10,pewit)\n",
"(10,phene)\n",
"(10,pheon)\n",
"(10,phone)\n",
"(10,picene)\n",
"(10,picine)\n",
"(10,piecen)\n",
"(10,pieman)\n",
"(10,piemen)\n",
"(10,piety)\n",
"(10,pika)\n",
"(10,pike)\n",
"(10,piki)\n",
"(10,piment)\n",
"(10,pimp)\n",
"(10,pincer)\n",
"(10,piney)\n",
"(10,pinged)\n",
"(10,pink)\n",
"(10,pinnoed)\n",
"(10,pinny)\n",
"(10,piony)\n",
"(10,pioye)\n",
"(10,piped)\n",
"(10,pitmen)\n",
"(10,poke)\n",
"(10,poney)\n",
"(10,ponk)\n",
"(10,powin)\n",
"(10,preif)\n",
"(10,prief)\n",
"(10,prince)\n",
"(10,puke)\n",
"(10,punk)\n",
"(10,punny)\n",
"(10,pyins)\n",
"(10,pynes)\n",
"(10,rex)\n",
"(10,sex)\n",
"(10,six)\n",
"(10,skep)\n",
"(10,skip)\n",
"(10,snipy)\n",
"(10,spek)\n",
"(10,spik)\n",
"(10,spiny)\n",
"(10,swipe)\n",
"(10,tex)\n",
"(10,tix)\n",
"(10,unhip)\n",
"(10,view)\n",
"(10,vimen)\n",
"(10,viny)\n",
"(10,viper)\n",
"(10,vive)\n",
"(10,when)\n",
"(10,whin)\n",
"(10,wife)\n",
"(10,wince)\n",
"(10,winned)\n",
"(10,winy)\n",
"(10,wiper)\n",
"(10,wipes)\n",
"(10,wive)\n",
"(10,wynn)\n",
"(10,xis)\n",
"(10,yince)\n",
"(10,yipes)\n",
"(9,ax)\n",
"(9,benign)\n",
"(9,binned)\n",
"(9,chin)\n",
"(9,cive)\n",
"(9,clipe)\n",
"(9,copen)\n",
"(9,cripe)\n",
"(9,dike)\n",
"(9,dimp)\n",
"(9,dink)\n",
"(9,dipnet)\n",
"(9,dwine)\n",
"(9,eff)\n",
"(9,ehing)\n",
"(9,eikon)\n",
"(9,enoki)\n",
"(9,enprint)\n",
"(9,epha)\n",
"(9,epics)\n",
"(9,epigon)\n",
"(9,espy)\n",
"(9,ex)\n",
"(9,eying)\n",
"(9,fainne)\n",
"(9,feh)\n",
"(9,feign)\n",
"(9,few)\n",
"(9,fey)\n",
"(9,fice)\n",
"(9,fiend)\n",
"(9,fined)\n",
"(9,finner)\n",
"(9,flip)\n",
"(9,genips)\n",
"(9,genny)\n",
"(9,gimp)\n",
"(9,gink)\n",
"(9,ginny)\n",
"(9,gipsen)\n",
"(9,given)\n",
"(9,gwine)\n",
"(9,gynie)\n",
"(9,gyp)\n",
"(9,heap)\n",
"(9,heh)\n",
"(9,help)\n",
"(9,hennin)\n",
"(9,heps)\n",
"(9,hept)\n",
"(9,hesp)\n",
"(9,hew)\n",
"(9,hey)\n",
"(9,hinge)\n",
"(9,hips)\n",
"(9,hipt)\n",
"(9,hope)\n",
"(9,hye)\n",
"(9,ick)\n",
"(9,iff)\n",
"(9,impel)\n",
"(9,inby)\n",
"(9,inch)\n",
"(9,indew)\n",
"(9,inker)\n",
"(9,inkle)\n",
"(9,invent)\n",
"(9,ippon)\n",
"(9,ivy)\n",
"(9,ja)\n",
"(9,jo)\n",
"(9,keb)\n",
"(9,kep)\n",
"(9,kind)\n",
"(9,kines)\n",
"(9,king)\n",
"(9,kinin)\n",
"(9,kip)\n",
"(9,koine)\n",
"(9,kop)\n",
"(9,ky)\n",
"(9,liken)\n",
"(9,lineny)\n",
"(9,linney)\n",
"(9,mening)\n",
"(9,mince)\n",
"(9,miny)\n",
"(9,naping)\n",
"(9,nappe)\n",
"(9,neigh)\n",
"(9,nempt)\n",
"(9,nimps)\n",
"(9,ninepin)\n",
"(9,ninety)\n",
"(9,nying)\n",
"(9,opined)\n",
"(9,ox)\n",
"(9,pained)\n",
"(9,pance)\n",
"(9,pangen)\n",
"(9,panic)\n",
"(9,panim)\n",
"(9,paning)\n",
"(9,panned)\n",
"(9,pannier)\n",
"(9,pantine)\n",
"(9,pave)\n",
"(9,pawn)\n",
"(9,pecan)\n",
"(9,peeing)\n",
"(9,pehs)\n",
"(9,peined)\n",
"(9,pelf)\n",
"(9,penang)\n",
"(9,pence)\n",
"(9,pening)\n",
"(9,penned)\n",
"(9,pennies)\n",
"(9,pennill)\n",
"(9,pennine)\n",
"(9,pension)\n",
"(9,perv)\n",
"(9,pews)\n",
"(9,pfui)\n",
"(9,phis)\n",
"(9,phon)\n",
"(9,piece)\n",
"(9,pieing)\n",
"(9,piends)\n",
"(9,pigeon)\n",
"(9,pily)\n",
"(9,pinang)\n",
"(9,pindan)\n",
"(9,pinder)\n",
"(9,pinenes)\n",
"(9,pinger)\n",
"(9,pingle)\n",
"(9,pining)\n",
"(9,pinnate)\n",
"(9,pinned)\n",
"(9,pinners)\n",
"(9,pinnets)\n",
"(9,pinnies)\n",
"(9,pinnule)\n",
"(9,pinones)\n",
"(9,pinup)\n",
"(9,piny)\n",
"(9,pioned)\n",
"(9,pioy)\n",
"(9,piper)\n",
"(9,pipes)\n",
"(9,pipet)\n",
"(9,pish)\n",
"(9,pith)\n",
"(9,pity)\n",
"(9,plew)\n",
"(9,ponce)\n",
"(9,ponied)\n",
"(9,pontine)\n",
"(9,pony)\n",
"(9,pown)\n",
"(9,prey)\n",
"(9,price)\n",
"(9,prime)\n",
"(9,pumie)\n",
"(9,punce)\n",
"(9,punned)\n",
"(9,punnier)\n",
"(9,puny)\n",
"(9,pyes)\n",
"(9,pyet)\n",
"(9,pyin)\n",
"(9,pyne)\n",
"(9,pyre)\n",
"(9,reink)\n",
"(9,rype)\n",
"(9,sepic)\n",
"(9,shinne)\n",
"(9,ship)\n",
"(9,skein)\n",
"(9,sniped)\n",
"(9,spew)\n",
"(9,spice)\n",
"(9,spif)\n",
"(9,spined)\n",
"(9,spinner)\n",
"(9,spinnet)\n",
"(9,spinone)\n",
"(9,spiv)\n",
"(9,sype)\n",
"(9,tempi)\n",
"(9,tenpins)\n",
"(9,type)\n",
"(9,umpie)\n",
"(9,unfine)\n",
"(9,uniped)\n",
"(9,veep)\n",
"(9,venine)\n",
"(9,venins)\n",
"(9,vibe)\n",
"(9,vice)\n",
"(9,vined)\n",
"(9,weep)\n",
"(9,wept)\n",
"(9,wey)\n",
"(9,wice)\n",
"(9,widen)\n",
"(9,wined)\n",
"(9,winge)\n",
"(9,winner)\n",
"(9,winnle)\n",
"(9,wipe)\n",
"(9,wisp)\n",
"(9,wye)\n",
"(9,wyn)\n",
"(9,xi)\n",
"(9,xu)\n",
"(9,yeh)\n",
"(9,yelp)\n",
"(9,yeps)\n",
"(9,yew)\n",
"(9,yipe)\n",
"(9,yips)\n",
"(9,yonnie)\n",
"(8,akin)\n",
"(8,alpine)\n",
"(8,aping)\n",
"(8,aspine)\n",
"(8,avine)\n",
"(8,beep)\n",
"(8,begin)\n",
"(8,being)\n",
"(8,bennis)\n",
"(8,bey)\n",
"(8,bice)\n",
"(8,binge)\n",
"(8,blip)\n",
"(8,boep)\n",
"(8,bonnie)\n",
"(8,bye)\n",
"(8,canine)\n",
"(8,cannie)\n",
"(8,cape)\n",
"(8,capi)\n",
"(8,cepe)\n",
"(8,ceps)\n",
"(8,che)\n",
"(8,chi)\n",
"(8,clip)\n",
"(8,conine)\n",
"(8,cope)\n",
"(8,defi)\n",
"(8,deif)\n",
"(8,denim)\n",
"(8,deny)\n",
"(8,dinned)\n",
"(8,dive)\n",
"(8,dyne)\n",
"(8,ech)\n",
"(8,eiks)\n",
"(8,elfin)\n",
"(8,emic)\n",
"(8,empt)\n",
"(8,encina)\n",
"(8,ending)\n",
"(8,envoi)\n",
"(8,epic)\n",
"(8,faine)\n",
"(8,fap)\n",
"(8,feint)\n",
"(8,fem)\n",
"(8,fend)\n",
"(8,fenis)\n",
"(8,fib)\n",
"(8,fient)\n",
"(8,find)\n",
"(8,finer)\n",
"(8,fines)\n",
"(8,fop)\n",
"(8,fy)\n",
"(8,genic)\n",
"(8,genip)\n",
"(8,ginned)\n",
"(8,gipon)\n",
"(8,give)\n",
"(8,gripe)\n",
"(8,hap)\n",
"(8,heid)\n",
"(8,hem)\n",
"(8,hend)\n",
"(8,henna)\n",
"(8,hep)\n",
"(8,hic)\n",
"(8,hide)\n",
"(8,hied)\n",
"(8,him)\n",
"(8,hind)\n",
"(8,hing)\n",
"(8,hip)\n",
"(8,hop)\n",
"(8,hup)\n",
"(8,ich)\n",
"(8,icy)\n",
"(8,ikan)\n",
"(8,ikon)\n",
"(8,impi)\n",
"(8,imps)\n",
"(8,inbent)\n",
"(8,incent)\n",
"(8,infer)\n",
"(8,inks)\n",
"(8,inspan)\n",
"(8,instep)\n",
"(8,kaie)\n",
"(8,kain)\n",
"(8,kane)\n",
"(8,ked)\n",
"(8,keen)\n",
"(8,keg)\n",
"(8,keir)\n",
"(8,keno)\n",
"(8,kens)\n",
"(8,kent)\n",
"(8,kern)\n",
"(8,kid)\n",
"(8,kier)\n",
"(8,kiln)\n",
"(8,kina)\n",
"(8,kine)\n",
"(8,kino)\n",
"(8,kins)\n",
"(8,kirn)\n",
"(8,kite)\n",
"(8,knee)\n",
"(8,knit)\n",
"(8,kune)\n",
"(8,lepid)\n",
"(8,leptin)\n",
"(8,levin)\n",
"(8,like)\n",
"(8,limp)\n",
"(8,lineup)\n",
"(8,liney)\n",
"(8,link)\n",
"(8,linny)\n",
"(8,liven)\n",
"(8,loipen)\n",
"(8,lupine)\n",
"(8,mew)\n",
"(8,mice)\n",
"(8,mime)\n",
"(8,mined)\n",
"(8,minge)\n",
"(8,minnie)\n",
"(8,mips)\n",
"(8,mope)\n",
"(8,naevi)\n",
"(8,naik)\n",
"(8,naive)\n",
"(8,naped)\n",
"(8,neanic)\n",
"(8,neifs)\n",
"(8,neive)\n",
"(8,neks)\n",
"(8,nepits)\n",
"(8,nerk)\n",
"(8,neuk)\n",
"(8,newie)\n",
"(8,niefs)\n",
"(8,nieve)\n",
"(8,nifes)\n",
"(8,nigh)\n",
"(8,nimb)\n",
"(8,ninny)\n",
"(8,ninth)\n",
"(8,nipter)\n",
"(8,nuke)\n",
"(8,nyed)\n",
"(8,oink)\n",
"(8,opines)\n",
"(8,oping)\n",
"(8,orpine)\n",
"(8,ovine)\n",
"(8,pace)\n",
"(8,pah)\n",
"(8,paned)\n",
"(8,panier)\n",
"(8,panini)\n",
"(8,panino)\n",
"(8,panner)\n",
"(8,pannes)\n",
"(8,pantie)\n",
"(8,pape)\n",
"(8,patine)\n",
"(8,pav)\n",
"(8,paw)\n",
"(8,pay)\n",
"(8,peba)\n",
"(8,pecs)\n",
"(8,peep)\n",
"(8,peh)\n",
"(8,pends)\n",
"(8,pendu)\n",
"(8,pened)\n",
"(8,pengo)\n",
"(8,penial)\n",
"(8,penies)\n",
"(8,penile)\n",
"(8,penill)\n",
"(8,pennae)\n",
"(8,pennal)\n",
"(8,penner)\n",
"(8,pennes)\n",
"(8,pennia)\n",
"(8,pennis)\n",
"(8,pennon)\n",
"(8,pensil)\n",
"(8,pepo)\n",
"(8,peps)\n",
"(8,perm)\n",
"(8,pernio)\n",
"(8,perp)\n",
"(8,pew)\n",
"(8,phi)\n",
"(8,pho)\n",
"(8,pht)\n",
"(8,pica)\n",
"(8,pice)\n",
"(8,pics)\n",
"(8,piend)\n",
"(8,piing)\n",
"(8,piled)\n",
"(8,pima)\n",
"(8,pineal)\n",
"(8,pined)\n",
"(8,pinene)\n",
"(8,pineta)\n",
"(8,pingo)\n",
"(8,pings)\n",
"(8,pinier)\n",
"(8,pinies)\n",
"(8,pinion)\n",
"(8,pinite)\n",
"(8,pinnae)\n",
"(8,pinnal)\n",
"(8,pinnas)\n",
"(8,pinner)\n",
"(8,pinnet)\n",
"(8,pinnie)\n",
"(8,pinole)\n",
"(8,pinons)\n",
"(8,pintle)\n",
"(8,pioner)\n",
"(8,pipa)\n",
"(8,pipe)\n",
"(8,pipi)\n",
"(8,pips)\n",
"(8,pirnie)\n",
"(8,pitten)\n",
"(8,pium)\n",
"(8,pleb)\n",
"(8,plied)\n",
"(8,plim)\n",
"(8,pling)\n",
"(8,ply)\n",
"(8,poem)\n",
"(8,poep)\n",
"(8,poh)\n",
"(8,poind)\n",
"(8,pointe)\n",
"(8,pome)\n",
"(8,ponent)\n",
"(8,ponies)\n",
"(8,pontie)\n",
"(8,pope)\n",
"(8,pow)\n",
"(8,prem)\n",
"(8,prep)\n",
"(8,pride)\n",
"(8,pried)\n",
"(8,prim)\n",
"(8,proine)\n",
"(8,pruine)\n",
"(8,pry)\n",
"(8,pterin)\n",
"(8,pube)\n",
"(8,puce)\n",
"(8,puh)\n",
"(8,puisne)\n",
"(8,punier)\n",
"(8,punner)\n",
"(8,punnet)\n",
"(8,purine)\n",
"(8,puy)\n",
"(8,pya)\n",
"(8,pye)\n",
"(8,rapine)\n",
"(8,redip)\n",
"(8,reik)\n",
"(8,renk)\n",
"(8,repine)\n",
"(8,repins)\n",
"(8,repp)\n",
"(8,rewin)\n",
"(8,rhine)\n",
"(8,rink)\n",
"(8,riped)\n",
"(8,ripens)\n",
"(8,ripp)\n",
"(8,riven)\n",
"(8,seik)\n",
"(8,sewin)\n",
"(8,shine)\n",
"(8,sike)\n",
"(8,simp)\n",
"(8,sinew)\n",
"(8,sink)\n",
"(8,siped)\n",
"(8,sken)\n",
"(8,skin)\n",
"(8,sniper)\n",
"(8,snipes)\n",
"(8,spec)\n",
"(8,spend)\n",
"(8,spic)\n",
"(8,spide)\n",
"(8,spied)\n",
"(8,spim)\n",
"(8,spinae)\n",
"(8,spinel)\n",
"(8,spines)\n",
"(8,spinet)\n",
"(8,spline)\n",
"(8,spy)\n",
"(8,supine)\n",
"(8,swine)\n",
"(8,temp)\n",
"(8,tenny)\n",
"(8,tenpin)\n",
"(8,tepid)\n",
"(8,thein)\n",
"(8,thine)\n",
"(8,tiepin)\n",
"(8,tike)\n",
"(8,tink)\n",
"(8,tinmen)\n",
"(8,tinny)\n",
"(8,twine)\n",
"(8,twp)\n",
"(8,unopen)\n",
"(8,unpeg)\n",
"(8,unpens)\n",
"(8,unpent)\n",
"(8,unpile)\n",
"(8,unpins)\n",
"(8,unripe)\n",
"(8,upend)\n",
"(8,veins)\n",
"(8,vend)\n",
"(8,venin)\n",
"(8,vide)\n",
"(8,vied)\n",
"(8,vim)\n",
"(8,viner)\n",
"(8,vines)\n",
"(8,visne)\n",
"(8,wap)\n",
"(8,web)\n",
"(8,weid)\n",
"(8,wem)\n",
"(8,wend)\n",
"(8,wide)\n",
"(8,wind)\n",
"(8,wines)\n",
"(8,wing)\n",
"(8,winna)\n",
"(8,winns)\n",
"(8,wop)\n",
"(8,yap)\n",
"(8,yep)\n",
"(8,yip)\n",
"(8,yup)\n",
"(7,ake)\n",
"(7,amine)\n",
"(7,amp)\n",
"(7,anew)\n",
"(7,anime)\n",
"(7,aped)\n",
"(7,apian)\n",
"(7,apnea)\n",
"(7,app)\n",
"(7,arpen)\n",
"(7,aspen)\n",
"(7,ayin)\n",
"(7,bap)\n",
"(7,bend)\n",
"(7,benis)\n",
"(7,benne)\n",
"(7,benni)\n",
"(7,bib)\n",
"(7,bide)\n",
"(7,bind)\n",
"(7,biner)\n",
"(7,bines)\n",
"(7,bing)\n",
"(7,bonie)\n",
"(7,bonne)\n",
"(7,bop)\n",
"(7,
ine)\n",
"(7,by)\n",
"(7,cap)\n",
"(7,cedi)\n",
"(7,cep)\n",
"(7,ch)\n",
"(7,cide)\n",
"(7,cines)\n",
"(7,cline)\n",
"(7,conin)\n",
"(7,conne)\n",
"(7,cop)\n",
"(7,crine)\n",
"(7,cunei)\n",
"(7,cup)\n",
"(7,deep)\n",
"(7,def)\n",
"(7,deign)\n",
"(7,dentin)\n",
"(7,dev)\n",
"(7,dew)\n",
"(7,dey)\n",
"(7,dice)\n",
"(7,dieb)\n",
"(7,dif)\n",
"(7,dime)\n",
"(7,dined)\n",
"(7,dinge)\n",
"(7,dinner)\n",
"(7,dinnle)\n",
"(7,dips)\n",
"(7,dipt)\n",
"(7,div)\n",
"(7,dope)\n",
"(7,drip)\n",
"(7,dupe)\n",
"(7,dye)\n",
"(7,eaning)\n",
"(7,e
)\n",
"(7,edh)\n",
"(7,eek)\n",
"(7,eevn)\n",
"(7,eik)\n",
"(7,eish)\n",
"(7,eke)\n",
"(7,elhi)\n",
"(7,elk)\n",
"(7,endrin)\n",
"(7,enew)\n",
"(7,engine)\n",
"(7,eniac)\n",
"(7,enow)\n",
"(7,enring)\n",
"(7,ensign)\n",
"(7,enuf)\n",
"(7,epris)\n",
"(7,erk)\n",
"(7,erning)\n",
"(7,euk)\n",
"(7,even)\n",
"(7,evil)\n",
"(7,eyen)\n",
"(7,eyne)\n",
"(7,fain)\n",
"(7,fane)\n",
"(7,fed)\n",
"(7,feen)\n",
"(7,feg)\n",
"(7,feis)\n",
"(7,feni)\n",
"(7,fens)\n",
"(7,fent)\n",
"(7,fern)\n",
"(7,fid)\n",
"(7,fier)\n",
"(7,fig)\n",
"(7,file)\n",
"(7,fine)\n",
"(7,fini)\n",
"(7,fino)\n",
"(7,fins)\n",
"(7,fire)\n",
"(7,firn)\n",
"(7,foen)\n",
"(7,foin)\n",
"(7,fone)\n",
"(7,gape)\n",
"(7,geep)\n",
"(7,gey)\n",
"(7,ghi)\n",
"(7,gibe)\n",
"(7,gif)\n",
"(7,ginge)\n",
"(7,ginnel)\n",
"(7,ginner)\n",
"(7,gips)\n",
"(7,grip)\n",
"(7,haen)\n",
"(7,hain)\n",
"(7,heil)\n",
"(7,heir)\n",
"(7,hens)\n",
"(7,hent)\n",
"(7,hern)\n",
"(7,hid)\n",
"(7,hies)\n",
"(7,hins)\n",
"(7,hint)\n",
"(7,hire)\n",
"(7,hisn)\n",
"(7,hm)\n",
"(7,hone)\n",
"(7,iced)\n",
"(7,idem)\n",
"(7,ilk)\n",
"(7,imine)\n",
"(7,imp)\n",
"(7,inapt)\n",
"(7,incle)\n",
"(7,indene)\n",
"(7,indent)\n",
"(7,inept)\n",
"(7,inerm)\n",
"(7,info)\n",
"(7,ingenu)\n",
"(7,ingine)\n",
"(7,ink)\n",
"(7,inly)\n",
"(7,innage)\n",
"(7,input)\n",
"(7,intend)\n",
"(7,irk)\n",
"(7,kae)\n",
"(7,kai)\n",
"(7,kea)\n",
"(7,ken)\n",
"(7,ket)\n",
"(7,kin)\n",
"(7,kir)\n",
"(7,kis)\n",
"(7,kit)\n",
"(7,koi)\n",
"(7,kon)\n",
"(7,kue)\n",
"(7,lapin)\n",
"(7,lek)\n",
"(7,lief)\n",
"(7,life)\n",
"(7,limen)\n",
"(7,linden)\n",
"(7,linned)\n",
"(7,liny)\n",
"(7,lipin)\n",
"(7,live)\n",
"(7,loipe)\n",
"(7,lupin)\n",
"(7,lwei)\n",
"(7,lyne)\n",
"(7,map)\n",
"(7,meins)\n",
"(7,meint)\n",
"(7,mem)\n",
"(7,mend)\n",
"(7,meng)\n",
"(7,mib)\n",
"(7,mic)\n",
"(7,miens)\n",
"(7,mim)\n",
"(7,minae)\n",
"(7,mind)\n",
"(7,miner)\n",
"(7,mines)\n",
"(7,ming)\n",
"(7,monie)\n",
"(7,mop)\n",
"(7,my)\n",
"(7,naif)\n",
"(7,nance)\n",
"(7,napes)\n",
"(7,nave)\n",
"(7,neaps)\n",
"(7,neeps)\n",
"(7,nefs)\n",
"(7,neif)\n",
"(7,nek)\n",
"(7,nemns)\n",
"(7,neper)\n",
"(7,nepit)\n",
"(7,nesh)\n",
"(7,netop)\n",
"(7,neve)\n",
"(7,nevi)\n",
"(7,news)\n",
"(7,newt)\n",
"(7,nicer)\n",
"(7,nided)\n",
"(7,niece)\n",
"(7,nief)\n",
"(7,nife)\n",
"(7,nipas)\n",
"(7,nish)\n",
"(7,nomen)\n",
"(7,nonce)\n",
"(7,nown)\n",
"(7,numen)\n",
"(7,nyes)\n",
"(7,oik)\n",
"(7,oke)\n",
"(7,ondine)\n",
"(7,oped)\n",
"(7,opens)\n",
"(7,opine)\n",
"(7,opsin)\n",
"(7,orpin)\n",
"(7,oven)\n",
"(7,pac)\n",
"(7,padi)\n",
"(7,paean)\n",
"(7,paeon)\n",
"(7,page)\n",
"(7,paid)\n",
"(7,pains)\n",
"(7,paint)\n",
"(7,paire)\n",
"(7,paise)\n",
"(7,pam)\n",
"(7,pand)\n",
"(7,panel)\n",
"(7,panes)\n",
"(7,pang)\n",
"(7,panne)\n",
"(7,pap)\n",
"(7,paten)\n",
"(7,patin)\n",
"(7,peag)\n",
"(7,peans)\n",
"(7,pec)\n",
"(7,peds)\n",
"(7,peed)\n",
"(7,peens)\n",
"(7,pegs)\n",
"(7,peins)\n",
"(7,peise)\n",
"(7,pelon)\n",
"(7,penal)\n",
"(7,pend)\n",
"(7,penes)\n",
"(7,penie)\n",
"(7,penis)\n",
"(7,penna)\n",
"(7,penne)\n",
"(7,penni)\n",
"(7,pents)\n",
"(7,peons)\n",
"(7,pep)\n",
"(7,perai)\n",
"(7,peril)\n",
"(7,peris)\n",
"(7,perns)\n",
"(7,petit)\n",
"(7,petti)\n",
"(7,piano)\n",
"(7,pians)\n",
"(7,pic)\n",
"(7,pied)\n",
"(7,piers)\n",
"(7,piert)\n",
"(7,pieta)\n",
"(7,piets)\n",
"(7,pigs)\n",
"(7,pilea)\n",
"(7,pilei)\n",
"(7,piler)\n",
"(7,piles)\n",
"(7,pinas)\n",
"(7,pines)\n",
"(7,ping)\n",
"(7,pinna)\n",
"(7,pinon)\n",
"(7,pinot)\n",
"(7,pinta)\n",
"(7,pinto)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"(7,pints)\n",
"(7,pions)\n",
"(7,pip)\n",
"(7,pirns)\n",
"(7,pises)\n",
"(7,piste)\n",
"(7,piton)\n",
"(7,plain)\n",
"(7,plane)\n",
"(7,pled)\n",
"(7,plena)\n",
"(7,pleon)\n",
"(7,plier)\n",
"(7,plies)\n",
"(7,point)\n",
"(7,poise)\n",
"(7,pom)\n",
"(7,pond)\n",
"(7,pones)\n",
"(7,pong)\n",
"(7,pop)\n",
"(7,potin)\n",
"(7,preen)\n",
"(7,prent)\n",
"(7,prier)\n",
"(7,pries)\n",
"(7,prig)\n",
"(7,print)\n",
"(7,prion)\n",
"(7,prise)\n",
"(7,proin)\n",
"(7,prone)\n",
"(7,prune)\n",
"(7,psion)\n",
"(7,pub)\n",
"(7,pung)\n",
"(7,pup)\n",
"(7,purin)\n",
"(7,reif)\n",
"(7,reny)\n",
"(7,repin)\n",
"(7,rife)\n",
"(7,ripen)\n",
"(7,riper)\n",
"(7,ripes)\n",
"(7,rive)\n",
"(7,seif)\n",
"(7,sepia)\n",
"(7,sewn)\n",
"(7,shin)\n",
"(7,sik)\n",
"(7,since)\n",
"(7,sinh)\n",
"(7,sinned)\n",
"(7,sipes)\n",
"(7,ski)\n",
"(7,slipe)\n",
"(7,sneap)\n",
"(7,snipe)\n",
"(7,snips)\n",
"(7,snoep)\n",
"(7,snye)\n",
"(7,spain)\n",
"(7,spane)\n",
"(7,spean)\n",
"(7,sped)\n",
"(7,speil)\n",
"(7,speir)\n",
"(7,spent)\n",
"(7,spiel)\n",
"(7,spier)\n",
"(7,spies)\n",
"(7,spile)\n",
"(7,spina)\n",
"(7,spine)\n",
"(7,spins)\n",
"(7,spire)\n",
"(7,spite)\n",
"(7,stipe)\n",
"(7,syen)\n",
"(7,syne)\n",
"(7,tapen)\n",
"(7,then)\n",
"(7,thin)\n",
"(7,tinned)\n",
"(7,tiny)\n",
"(7,tripe)\n",
"(7,twin)\n",
"(7,tyin)\n",
"(7,tyne)\n",
"(7,uke)\n",
"(7,ump)\n",
"(7,undine)\n",
"(7,unpen)\n",
"(7,unpin)\n",
"(7,unrip)\n",
"(7,uptie)\n",
"(7,vain)\n",
"(7,vane)\n",
"(7,veg)\n",
"(7,veil)\n",
"(7,vein)\n",
"(7,vena)\n",
"(7,vent)\n",
"(7,viae)\n",
"(7,vid)\n",
"(7,vier)\n",
"(7,vies)\n",
"(7,vig)\n",
"(7,vile)\n",
"(7,vina)\n",
"(7,vine)\n",
"(7,vino)\n",
"(7,vins)\n",
"(7,vint)\n",
"(7,vire)\n",
"(7,vise)\n",
"(7,vite)\n",
"(7,vlei)\n",
"(7,wain)\n",
"(7,wane)\n",
"(7,wean)\n",
"(7,wed)\n",
"(7,ween)\n",
"(7,weil)\n",
"(7,weir)\n",
"(7,wena)\n",
"(7,wens)\n",
"(7,went)\n",
"(7,wiel)\n",
"(7,wig)\n",
"(7,wile)\n",
"(7,wine)\n",
"(7,winn)\n",
"(7,wino)\n",
"(7,wins)\n",
"(7,wire)\n",
"(7,wise)\n",
"(7,wite)\n",
"(7,wren)\n",
"(7,yean)\n",
"(7,yens)\n",
"(7,yeti)\n",
"(7,yid)\n",
"(7,yins)\n",
"(7,yite)\n",
"(7,yoni)\n",
"(6,acne)\n",
"(6,ahi)\n",
"(6,amen)\n",
"(6,amie)\n",
"(6,amin)\n",
"(6,ance)\n",
"(6,any)\n",
"(6,aper)\n",
"(6,apes)\n",
"(6,apse)\n",
"(6,ave)\n",
"(6,awe)\n",
"(6,awn)\n",
"(6,aye)\n",
"(6,bane)\n",
"(6,bani)\n",
"(6,bean)\n",
"(6,bed)\n",
"(6,been)\n",
"(6,beg)\n",
"(6,bein)\n",
"(6,bene)\n",
"(6,beni)\n",
"(6,bens)\n",
"(6,bent)\n",
"(6,bid)\n",
"(6,bien)\n",
"(6,bier)\n",
"(6,big)\n",
"(6,bile)\n",
"(6,bine)\n",
"(6,bins)\n",
"(6,bint)\n",
"(6,bise)\n",
"(6,bite)\n",
"(6,blin)\n",
"(6,bone)\n",
"(6,
ei)\n",
"(6,
en)\n",
"(6,
ie)\n",
"(6,
in)\n",
"(6,bunn)\n",
"(6,cain)\n",
"(6,cane)\n",
"(6,cann)\n",
"(6,ceil)\n",
"(6,cens)\n",
"(6,cent)\n",
"(6,cid)\n",
"(6,ciel)\n",
"(6,cig)\n",
"(6,cine)\n",
"(6,cion)\n",
"(6,cire)\n",
"(6,cite)\n",
"(6,coin)\n",
"(6,cone)\n",
"(6,coni)\n",
"(6,conn)\n",
"(6,daine)\n",
"(6,dap)\n",
"(6,deb)\n",
"(6,deid)\n",
"(6,denis)\n",
"(6,dib)\n",
"(6,died)\n",
"(6,diene)\n",
"(6,dim)\n",
"(6,diner)\n",
"(6,dines)\n",
"(6,ding)\n",
"(6,dinna)\n",
"(6,dip)\n",
"(6,donne)\n",
"(6,dop)\n",
"(6,dup)\n",
"(6,ebon)\n",
"(6,efs)\n",
"(6,eft)\n",
"(6,ehs)\n",
"(6,eigne)\n",
"(6,eldin)\n",
"(6,elf)\n",
"(6,emir)\n",
"(6,emit)\n",
"(6,ennog)\n",
"(6,ennuis)\n",
"(6,eonian)\n",
"(6,epee)\n",
"(6,epos)\n",
"(6,erf)\n",
"(6,eric)\n",
"(6,ering)\n",
"(6,eth)\n",
"(6,etic)\n",
"(6,eve)\n",
"(6,evo)\n",
"(6,ewe)\n",
"(6,ewt)\n",
"(6,eye)\n",
"(6,fae)\n",
"(6,fan)\n",
"(6,fee)\n",
"(6,fen)\n",
"(6,fer)\n",
"(6,fes)\n",
"(6,fet)\n",
"(6,feu)\n",
"(6,fie)\n",
"(6,fil)\n",
"(6,fin)\n",
"(6,fir)\n",
"(6,fit)\n",
"(6,foe)\n",
"(6,fon)\n",
"(6,fun)\n",
"(6,gap)\n",
"(6,gem)\n",
"(6,genie)\n",
"(6,genii)\n",
"(6,gib)\n",
"(6,gied)\n",
"(6,ging)\n",
"(6,gip)\n",
"(6,grein)\n",
"(6,gup)\n",
"(6,hae)\n",
"(6,han)\n",
"(6,hen)\n",
"(6,her)\n",
"(6,hes)\n",
"(6,het)\n",
"(6,hie)\n",
"(6,hin)\n",
"(6,his)\n",
"(6,hit)\n",
"(6,hoe)\n",
"(6,hoi)\n",
"(6,hon)\n",
"(6,hue)\n",
"(6,hui)\n",
"(6,hun)\n",
"(6,icer)\n",
"(6,ices)\n",
"(6,icon)\n",
"(6,ident)\n",
"(6,ifs)\n",
"(6,inaner)\n",
"(6,inanes)\n",
"(6,indie)\n",
"(6,indue)\n",
"(6,ingan)\n",
"(6,ingle)\n",
"(6,innate)\n",
"(6,inned)\n",
"(6,inners)\n",
"(6,insane)\n",
"(6,intent)\n",
"(6,intern)\n",
"(6,intine)\n",
"(6,intone)\n",
"(6,ionone)\n",
"(6,ish)\n",
"(6,item)\n",
"(6,iwi)\n",
"(6,ka)\n",
"(6,ki)\n",
"(6,ko)\n",
"(6,leap)\n",
"(6,leep)\n",
"(6,leps)\n",
"(6,lept)\n",
"(6,lerp)\n",
"(6,lev)\n",
"(6,lew)\n",
"(6,ley)\n",
"(6,lice)\n",
"(6,ligne)\n",
"(6,lime)\n",
"(6,limn)\n",
"(6,lined)\n",
"(6,linens)\n",
"(6,linnet)\n",
"(6,lipa)\n",
"(6,lipe)\n",
"(6,lipo)\n",
"(6,lips)\n",
"(6,lisp)\n",
"(6,lope)\n",
"(6,lye)\n",
"(6,main)\n",
"(6,mane)\n",
"(6,mani)\n",
"(6,mean)\n",
"(6,med)\n",
"(6,meg)\n",
"(6,mein)\n",
"(6,mene)\n",
"(6,meno)\n",
"(6,ment)\n",
"(6,menu)\n",
"(6,meri)\n",
"(6,mid)\n",
"(6,mien)\n",
"(6,mig)\n",
"(6,mile)\n",
"(6,mina)\n",
"(6,mine)\n",
"(6,mini)\n",
"(6,mino)\n",
"(6,mint)\n",
"(6,mire)\n",
"(6,mise)\n",
"(6,mite)\n",
"(6,mm)\n",
"(6,muni)\n",
"(6,nabe)\n",
"(6,nah)\n",
"(6,name)\n",
"(6,nannie)\n",
"(6,napa)\n",
"(6,nape)\n",
"(6,naps)\n",
"(6,narine)\n",
"(6,naw)\n",
"(6,nay)\n",
"(6,neap)\n",
"(6,nebs)\n",
"(6,neem)\n",
"(6,neep)\n",
"(6,nef)\n",
"(6,neinei)\n",
"(6,nema)\n",
"(6,nemn)\n",
"(6,neps)\n",
"(6,nerine)\n",
"(6,neum)\n",
"(6,new)\n",
"(6,nibs)\n",
"(6,nice)\n",
"(6,nides)\n",
"(6,niger)\n",
"(6,nims)\n",
"(6,nipa)\n",
"(6,nips)\n",
"(6,noh)\n",
"(6,nome)\n",
"(6,noop)\n",
"(6,nope)\n",
"(6,noup)\n",
"(6,now)\n",
"(6,noy)\n",
"(6,nth)\n",
"(6,nudie)\n",
"(6,nye)\n",
"(6,nys)\n",
"(6,olpe)\n",
"(6,omen)\n",
"(6,once)\n",
"(6,online)\n",
"(6,onned)\n",
"(6,ony)\n",
"(6,open)\n",
"(6,opes)\n",
"(6,owe)\n",
"(6,own)\n",
"(6,oye)\n",
"(6,pad)\n",
"(6,pail)\n",
"(6,pain)\n",
"(6,pair)\n",
"(6,pais)\n",
"(6,pale)\n",
"(6,pane)\n",
"(6,pans)\n",
"(6,pant)\n",
"(6,pare)\n",
"(6,pase)\n",
"(6,pate)\n",
"(6,peal)\n",
"(6,pean)\n",
"(6,pear)\n",
"(6,peas)\n",
"(6,peat)\n",
"(6,ped)\n",
"(6,peel)\n",
"(6,peen)\n",
"(6,peer)\n",
"(6,pees)\n",
"(6,peg)\n",
"(6,pein)\n",
"(6,pela)\n",
"(6,pele)\n",
"(6,pell)\n",
"(6,pelt)\n",
"(6,pene)\n",
"(6,peni)\n",
"(6,pens)\n",
"(6,pent)\n",
"(6,peon)\n",
"(6,pere)\n",
"(6,peri)\n",
"(6,pern)\n",
"(6,pert)\n",
"(6,peso)\n",
"(6,pest)\n",
"(6,pets)\n",
"(6,pial)\n",
"(6,pian)\n",
"(6,pias)\n",
"(6,pier)\n",
"(6,pies)\n",
"(6,piet)\n",
"(6,pig)\n",
"(6,pila)\n",
"(6,pile)\n",
"(6,pili)\n",
"(6,pill)\n",
"(6,pina)\n",
"(6,pine)\n",
"(6,pins)\n",
"(6,pint)\n",
"(6,pion)\n",
"(6,pirl)\n",
"(6,pirn)\n",
"(6,pirs)\n",
"(6,pise)\n",
"(6,piso)\n",
"(6,piss)\n",
"(6,pita)\n",
"(6,pits)\n",
"(6,plan)\n",
"(6,plea)\n",
"(6,plie)\n",
"(6,plue)\n",
"(6,pod)\n",
"(6,poet)\n",
"(6,pois)\n",
"(6,pole)\n",
"(6,pone)\n",
"(6,pons)\n",
"(6,pont)\n",
"(6,poon)\n",
"(6,pore)\n",
"(6,porn)\n",
"(6,pose)\n",
"(6,pote)\n",
"(6,pree)\n",
"(6,psis)\n",
"(6,ptui)\n",
"(6,pud)\n",
"(6,puer)\n",
"(6,pug)\n",
"(6,puir)\n",
"(6,pule)\n",
"(6,puli)\n",
"(6,puna)\n",
"(6,puns)\n",
"(6,punt)\n",
"(6,pure)\n",
"(6,puri)\n",
"(6,ranine)\n",
"(6,rape)\n",
"(6,reap)\n",
"(6,ref)\n",
"(6,reh)\n",
"(6,reign)\n",
"(6,renig)\n",
"(6,renins)\n",
"(6,rennin)\n",
"(6,repo)\n",
"(6,reps)\n",
"(6,rev)\n",
"(6,rew)\n",
"(6,rice)\n",
"(6,riem)\n",
"(6,rif)\n",
"(6,rime)\n",
"(6,ripe)\n",
"(6,rips)\n",
"(6,ript)\n",
"(6,risp)\n",
"(6,ronnie)\n",
"(6,rope)\n",
"(6,rye)\n",
"(6,sannie)\n",
"(6,sdein)\n",
"(6,seep)\n",
"(6,segni)\n",
"(6,semi)\n",
"(6,sengi)\n",
"(6,sennit)\n",
"(6,seps)\n",
"(6,sept)\n",
"(6,sew)\n",
"(6,sey)\n",
"(6,she)\n",
"(6,sice)\n",
"(6,sienna)\n",
"(6,sif)\n",
"(6,sined)\n",
"(6,singe)\n",
"(6,sinner)\n",
"(6,sinnet)\n",
"(6,sipe)\n",
"(6,sips)\n",
"(6,slip)\n",
"(6,snap)\n",
"(6,sneb)\n",
"(6,snib)\n",
"(6,snide)\n",
"(6,snip)\n",
"(6,sny)\n",
"(6,spae)\n",
"(6,span)\n",
"(6,spet)\n",
"(6,spie)\n",
"(6,spin)\n",
"(6,spit)\n",
"(6,spue)\n",
"(6,spun)\n",
"(6,step)\n",
"(6,supe)\n",
"(6,sye)\n",
"(6,syn)\n",
"(6,tannie)\n",
"(6,tape)\n",
"(6,tef)\n",
"(6,teind)\n",
"(6,tennis)\n",
"(6,tepa)\n",
"(6,tew)\n",
"(6,the)\n",
"(6,tice)\n",
"(6,time)\n",
"(6,tined)\n",
"(6,tinge)\n",
"(6,tinner)\n",
"(6,tinnie)\n",
"(6,tipi)\n",
"(6,tips)\n",
"(6,tipt)\n",
"(6,tope)\n",
"(6,topi)\n",
"(6,trip)\n",
"(6,tye)\n",
"(6,uey)\n",
"(6,unbe)\n",
"(6,unce)\n",
"(6,unci)\n",
"(6,unline)\n",
"(6,unrein)\n",
"(6,upon)\n",
"(6,vae)\n",
"(6,van)\n",
"(6,vee)\n",
"(6,vet)\n",
"(6,via)\n",
"(6,vie)\n",
"(6,vin)\n",
"(6,vis)\n",
"(6,voe)\n",
"(6,wae)\n",
"(6,wai)\n",
"(6,wan)\n",
"(6,wee)\n",
"(6,wen)\n",
"(6,wet)\n",
"(6,win)\n",
"(6,wis)\n",
"(6,wit)\n",
"(6,woe)\n",
"(6,won)\n",
"(6,yae)\n",
"(6,yea)\n",
"(6,yen)\n",
"(6,yes)\n",
"(6,yet)\n",
"(6,yin)\n",
"(6,yon)\n",
"(5,ace)\n",
"(5,agen)\n",
"(5,agin)\n",
"(5,ah)\n",
"(5,aide)\n",
"(5,aim)\n",
"(5,ainee)\n",
"(5,alien)\n",
"(5,aline)\n",
"(5,alp)\n",
"(5,ami)\n",
"(5,anent)\n",
"(5,anile)\n",
"(5,anion)\n",
"(5,anise)\n",
"(5,ape)\n",
"(5,apo)\n",
"(5,apt)\n",
"(5,asp)\n",
"(5,aw)\n",
"(5,ay)\n",
"(5,ban)\n",
"(5,bee)\n",
"(5,bel)\n",
"(5,ben)\n",
"(5,bes)\n",
"(5,bet)\n",
"(5,bin)\n",
"(5,bio)\n",
"(5,bis)\n",
"(5,bit)\n",
"(5,boi)\n",
"(5,bon)\n",
"(5,bun)\n",
"(5,can)\n",
"(5,cee)\n",
"(5,cel)\n",
"(5,cis)\n",
"(5,cit)\n",
"(5,con)\n",
"(5,cue)\n",
"(5,dean)\n",
"(5,deen)\n",
"(5,deg)\n",
"(5,deil)\n",
"(5,deli)\n",
"(5,dene)\n",
"(5,deni)\n",
"(5,dens)\n",
"(5,dent)\n",
"(5,dern)\n",
"(5,desi)\n",
"(5,did)\n",
"(5,diel)\n",
"(5,dies)\n",
"(5,diet)\n",
"(5,dig)\n",
"(5,dine)\n",
"(5,dino)\n",
"(5,dins)\n",
"(5,dint)\n",
"(5,dire)\n",
"(5,dite)\n",
"(5,doen)\n",
"(5,done)\n",
"(5,dune)\n",
"(5,eco)\n",
"(5,ecu)\n",
"(5,edit)\n",
"(5,ef)\n",
"(5,egg)\n",
"(5,egis)\n",
"(5,eh)\n",
"(5,eide)\n",
"(5,eild)\n",
"(5,elain)\n",
"(5,elint)\n",
"(5,elm)\n",
"(5,eloin)\n",
"(5,elsin)\n",
"(5,eme)\n",
"(5,emo)\n",
"(5,ems)\n",
"(5,emu)\n",
"(5,ends)\n",
"(5,engs)\n",
"(5,enlit)\n",
"(5,ennui)\n",
"(5,entia)\n",
"(5,eosin)\n",
"(5,ettin)\n",
"(5,fa)\n",
"(5,fe)\n",
"(5,gaen)\n",
"(5,gain)\n",
"(5,gane)\n",
"(5,gean)\n",
"(5,ged)\n",
"(5,geit)\n",
"(5,gena)\n",
"(5,gene)\n",
"(5,gens)\n",
"(5,gent)\n",
"(5,genu)\n",
"(5,gid)\n",
"(5,gien)\n",
"(5,gies)\n",
"(5,gig)\n",
"(5,ginn)\n",
"(5,gins)\n",
"(5,girn)\n",
"(5,gite)\n",
"(5,glei)\n",
"(5,glen)\n",
"(5,gone)\n",
"(5,gren)\n",
"(5,grin)\n",
"(5,ha)\n",
"(5,he)\n",
"(5,hi)\n",
"(5,ho)\n",
"(5,ice)\n",
"(5,idea)\n",
"(5,idee)\n",
"(5,ides)\n",
"(5,idle)\n",
"(5,if)\n",
"(5,igg)\n",
"(5,inane)\n",
"(5,inert)\n",
"(5,ingo)\n",
"(5,inion)\n",
"(5,inlet)\n",
"(5,inner)\n",
"(5,inrun)\n",
"(5,inset)\n",
"(5,intel)\n",
"(5,inter)\n",
"(5,inure)\n",
"(5,inurn)\n",
"(5,ired)\n",
"(5,irone)\n",
"(5,ism)\n",
"(5,isnae)\n",
"(5,lap)\n",
"(5,lend)\n",
"(5,leng)\n",
"(5,lenis)\n",
"(5,lenti)\n",
"(5,lep)\n",
"(5,liane)\n",
"(5,lib)\n",
"(5,lied)\n",
"(5,liens)\n",
"(5,lind)\n",
"(5,linen)\n",
"(5,liner)\n",
"(5,lines)\n",
"(5,ling)\n",
"(5,linin)\n",
"(5,linns)\n",
"(5,lip)\n",
"(5,lop)\n",
"(5,mae)\n",
"(5,man)\n",
"(5,mee)\n",
"(5,mel)\n",
"(5,men)\n",
"(5,mes)\n",
"(5,met)\n",
"(5,meu)\n",
"(5,mil)\n",
"(5,mir)\n",
"(5,mis)\n",
"(5,mna)\n",
"(5,moe)\n",
"(5,moi)\n",
"(5,mon)\n",
"(5,mun)\n",
"(5,nab)\n",
"(5,nam)\n",
"(5,nap)\n",
"(5,neb)\n",
"(5,neds)\n",
"(5,need)\n",
"(5,negs)\n",
"(5,neist)\n",
"(5,nelis)\n",
"(5,nenes)\n",
"(5,neons)\n",
"(5,nep)\n",
"(5,nerd)\n",
"(5,nib)\n",
"(5,nide)\n",
"(5,nidi)\n",
"(5,nids)\n",
"(5,nied)\n",
"(5,nim)\n",
"(5,nines)\n",
"(5,ninon)\n",
"(5,nip)\n",
"(5,nisei)\n",
"(5,nisse)\n",
"(5,niter)\n",
"(5,nites)\n",
"(5,niton)\n",
"(5,nitre)\n",
"(5,nob)\n",
"(5,node)\n",
"(5,nodi)\n",
"(5,noint)\n",
"(5,noise)\n",
"(5,nom)\n",
"(5,nones)\n",
"(5,nonet)\n",
"(5,nong)\n",
"(5,nonis)\n",
"(5,nub)\n",
"(5,nude)\n",
"(5,ny)\n",
"(5,obe)\n",
"(5,obi)\n",
"(5,of)\n",
"(5,oh)\n",
"(5,olein)\n",
"(5,onion)\n",
"(5,oop)\n",
"(5,ope)\n",
"(5,ops)\n",
"(5,opt)\n",
"(5,oup)\n",
"(5,ow)\n",
"(5,oy)\n",
"(5,pal)\n",
"(5,pan)\n",
"(5,par)\n",
"(5,pas)\n",
"(5,pat)\n",
"(5,pea)\n",
"(5,pee)\n",
"(5,pen)\n",
"(5,per)\n",
"(5,pes)\n",
"(5,pet)\n",
"(5,pia)\n",
"(5,pie)\n",
"(5,pin)\n",
"(5,pir)\n",
"(5,pis)\n",
"(5,pit)\n",
"(5,piu)\n",
"(5,plu)\n",
"(5,poa)\n",
"(5,poi)\n",
"(5,pol)\n",
"(5,poo)\n",
"(5,pos)\n",
"(5,pot)\n",
"(5,pre)\n",
"(5,pro)\n",
"(5,psi)\n",
"(5,pst)\n",
"(5,pul)\n",
"(5,pun)\n",
"(5,pur)\n",
"(5,pus)\n",
"(5,put)\n",
"(5,raine)\n",
"(5,rap)\n",
"(5,reb)\n",
"(5,rec)\n",
"(5,reins)\n",
"(5,rem)\n",
"(5,rend)\n",
"(5,renin)\n",
"(5,renne)\n",
"(5,rep)\n",
"(5,resin)\n",
"(5,rib)\n",
"(5,ride)\n",
"(5,rim)\n",
"(5,rind)\n",
"(5,rines)\n",
"(5,ring)\n",
"(5,rinse)\n",
"(5,rip)\n",
"(5,risen)\n",
"(5,ronin)\n",
"(5,ronne)\n",
"(5,saine)\n",
"(5,sap)\n",
"(5,sec)\n",
"(5,seine)\n",
"(5,send)\n",
"(5,senna)\n",
"(5,sensi)\n",
"(5,senti)\n",
"(5,serin)\n",
"(5,sh)\n",
"(5,sib)\n",
"(5,sic)\n",
"(5,side)\n",
"(5,siens)\n",
"(5,sient)\n",
"(5,sign)\n",
"(5,silen)\n",
"(5,sim)\n",
"(5,sind)\n",
"(5,sines)\n",
"(5,sing)\n",
"(5,sip)\n",
"(5,siren)\n",
"(5,sned)\n",
"(5,snies)\n",
"(5,snig)\n",
"(5,sonne)\n",
"(5,sop)\n",
"(5,spa)\n",
"(5,stein)\n",
"(5,sup)\n",
"(5,tap)\n",
"(5,tec)\n",
"(5,tend)\n",
"(5,tenia)\n",
"(5,tenne)\n",
"(5,tenno)\n",
"(5,tenon)\n",
"(5,tic)\n",
"(5,tide)\n",
"(5,tied)\n",
"(5,tige)\n",
"(5,tind)\n",
"(5,tinea)\n",
"(5,tines)\n",
"(5,ting)\n",
"(5,tip)\n",
"(5,tonne)\n",
"(5,top)\n",
"(5,trine)\n",
"(5,tup)\n",
"(5,uh)\n",
"(5,unde)\n",
"(5,union)\n",
"(5,unite)\n",
"(5,untie)\n",
"(5,untin)\n",
"(5,upo)\n",
"(5,ups)\n",
"(5,urine)\n",
"(5,urp)\n",
"(5,we)\n",
"(5,wo)\n",
"(5,ya)\n",
"(5,ye)\n",
"(5,yo)\n",
"(5,yu)\n",
"(4,ab)\n",
"(4,aeon)\n",
"(4,age)\n",
"(4,aid)\n",
"(4,aine)\n",
"(4,ains)\n",
"(4,airn)\n",
"(4,am)\n",
"(4,anan)\n",
"(4,and)\n",
"(4,anes)\n",
"(4,anil)\n",
"(4,anis)\n",
"(4,anna)\n",
"(4,anno)\n",
"(4,anns)\n",
"(4,anon)\n",
"(4,ante)\n",
"(4,anti)\n",
"(4,aune)\n",
"(4,ba)\n",
"(4,be)\n",
"(4,bi)\n",
"(4,bo)\n",
"(4,dae)\n",
"(4,dan)\n",
"(4,dee)\n",
"(4,dei)\n",
"(4,del)\n",
"(4,den)\n",
"(4,die)\n",
"(4,din)\n",
"(4,dis)\n",
"(4,dit)\n",
"(4,doe)\n",
"(4,don)\n",
"(4,due)\n",
"(4,dui)\n",
"(4,dun)\n",
"(4,eans)\n",
"(4,earn)\n",
"(4,eds)\n",
"(4,ego)\n",
"(4,eina)\n",
"(4,eine)\n",
"(4,elan)\n",
"(4,eld)\n",
"(4,em)\n",
"(4,end)\n",
"(4,enes)\n",
"(4,eng)\n",
"(4,enol)\n",
"(4,eoan)\n",
"(4,eons)\n",
"(4,erg)\n",
"(4,erne)\n",
"(4,erns)\n",
"(4,esne)\n",
"(4,eten)\n",
"(4,etna)\n",
"(4,etui)\n",
"(4,euoi)\n",
"(4,gae)\n",
"(4,gan)\n",
"(4,gee)\n",
"(4,gel)\n",
"(4,gen)\n",
"(4,geo)\n",
"(4,get)\n",
"(4,gie)\n",
"(4,gin)\n",
"(4,gio)\n",
"(4,gis)\n",
"(4,git)\n",
"(4,gnu)\n",
"(4,goe)\n",
"(4,gon)\n",
"(4,gue)\n",
"(4,gun)\n",
"(4,ide)\n",
"(4,ids)\n",
"(4,ilea)\n",
"(4,inia)\n",
"(4,inns)\n",
"(4,inro)\n",
"(4,inti)\n",
"(4,into)\n",
"(4,ions)\n",
"(4,ires)\n",
"(4,iron)\n",
"(4,isle)\n",
"(4,isna)\n",
"(4,iure)\n",
"(4,lain)\n",
"(4,lane)\n",
"(4,lean)\n",
"(4,led)\n",
"(4,leg)\n",
"(4,leir)\n",
"(4,leis)\n",
"(4,leno)\n",
"(4,lens)\n",
"(4,lent)\n",
"(4,lid)\n",
"(4,lien)\n",
"(4,lier)\n",
"(4,lies)\n",
"(4,lieu)\n",
"(4,lig)\n",
"(4,line)\n",
"(4,linn)\n",
"(4,lino)\n",
"(4,lins)\n",
"(4,lint)\n",
"(4,lion)\n",
"(4,lire)\n",
"(4,lite)\n",
"(4,loin)\n",
"(4,lone)\n",
"(4,lune)\n",
"(4,ma)\n",
"(4,me)\n",
"(4,mi)\n",
"(4,mo)\n",
"(4,mu)\n",
"(4,naan)\n",
"(4,nag)\n",
"(4,nail)\n",
"(4,nain)\n",
"(4,nana)\n",
"(4,nane)\n",
"(4,nans)\n",
"(4,naoi)\n",
"(4,nare)\n",
"(4,neal)\n",
"(4,near)\n",
"(4,neat)\n",
"(4,ned)\n",
"(4,neg)\n",
"(4,nene)\n",
"(4,neon)\n",
"(4,ness)\n",
"(4,nest)\n",
"(4,nete)\n",
"(4,nets)\n",
"(4,nett)\n",
"(4,nid)\n",
"(4,nies)\n",
"(4,nill)\n",
"(4,nils)\n",
"(4,nine)\n",
"(4,nirl)\n",
"(4,nisi)\n",
"(4,nite)\n",
"(4,nits)\n",
"(4,nod)\n",
"(4,noel)\n",
"(4,noes)\n",
"(4,nog)\n",
"(4,noil)\n",
"(4,noir)\n",
"(4,nole)\n",
"(4,nona)\n",
"(4,none)\n",
"(4,noni)\n",
"(4,noon)\n",
"(4,nori)\n",
"(4,nose)\n",
"(4,note)\n",
"(4,noun)\n",
"(4,nuns)\n",
"(4,ob)\n",
"(4,ode)\n",
"(4,oint)\n",
"(4,om)\n",
"(4,oner)\n",
"(4,ones)\n",
"(4,onie)\n",
"(4,op)\n",
"(4,pa)\n",
"(4,pe)\n",
"(4,pi)\n",
"(4,po)\n",
"(4,rain)\n",
"(4,rani)\n",
"(4,rean)\n",
"(4,red)\n",
"(4,reen)\n",
"(4,reg)\n",
"(4,rein)\n",
"(4,reis)\n",
"(4,rens)\n",
"(4,rent)\n",
"(4,rid)\n",
"(4,riel)\n",
"(4,rig)\n",
"(4,rile)\n",
"(4,rine)\n",
"(4,rins)\n",
"(4,rise)\n",
"(4,rite)\n",
"(4,roin)\n",
"(4,rone)\n",
"(4,ruin)\n",
"(4,rune)\n",
"(4,sain)\n",
"(4,sane)\n",
"(4,sean)\n",
"(4,sed)\n",
"(4,seen)\n",
"(4,seg)\n",
"(4,seil)\n",
"(4,seir)\n",
"(4,seis)\n",
"(4,sena)\n",
"(4,sene)\n",
"(4,sens)\n",
"(4,sent)\n",
"(4,sien)\n",
"(4,sies)\n",
"(4,sile)\n"
]
},
{
"name": "stdout",
"output_type": "stream",
"text": [
"(4,sine)\n",
"(4,sins)\n",
"(4,sire)\n",
"(4,site)\n",
"(4,snee)\n",
"(4,snit)\n",
"(4,sone)\n",
"(4,sten)\n",
"(4,stie)\n",
"(4,sunn)\n",
"(4,tain)\n",
"(4,tane)\n",
"(4,ted)\n",
"(4,teen)\n",
"(4,teg)\n",
"(4,teil)\n",
"(4,tene)\n",
"(4,tens)\n",
"(4,tent)\n",
"(4,tern)\n",
"(4,tid)\n",
"(4,tier)\n",
"(4,ties)\n",
"(4,tig)\n",
"(4,tile)\n",
"(4,tine)\n",
"(4,tins)\n",
"(4,tint)\n",
"(4,tire)\n",
"(4,tite)\n",
"(4,tone)\n",
"(4,trie)\n",
"(4,trin)\n",
"(4,tune)\n",
"(4,um)\n",
"(4,unai)\n",
"(4,unis)\n",
"(4,unit)\n",
"(4,up)\n",
"(3,ad)\n",
"(3,ag)\n",
"(3,aia)\n",
"(3,ail)\n",
"(3,ain)\n",
"(3,air)\n",
"(3,ais)\n",
"(3,ait)\n",
"(3,ale)\n",
"(3,ana)\n",
"(3,ane)\n",
"(3,ani)\n",
"(3,ann)\n",
"(3,ant)\n",
"(3,are)\n",
"(3,ate)\n",
"(3,aue)\n",
"(3,da)\n",
"(3,de)\n",
"(3,di)\n",
"(3,do)\n",
"(3,ean)\n",
"(3,ear)\n",
"(3,eas)\n",
"(3,eat)\n",
"(3,eau)\n",
"(3,ed)\n",
"(3,eel)\n",
"(3,een)\n",
"(3,ell)\n",
"(3,els)\n",
"(3,elt)\n",
"(3,ene)\n",
"(3,ens)\n",
"(3,eon)\n",
"(3,era)\n",
"(3,ere)\n",
"(3,ern)\n",
"(3,e
)\n",
"(3,ers)\n",
"(3,ess)\n",
"(3,est)\n",
"(3,eta)\n",
"(3,gi)\n",
"(3,go)\n",
"(3,gu)\n",
"(3,id)\n",
"(3,ill)\n",
"(3,inn)\n",
"(3,ins)\n",
"(3,ion)\n",
"(3,ios)\n",
"(3,ire)\n",
"(3,iso)\n",
"(3,ita)\n",
"(3,its)\n",
"(3,lea)\n",
"(3,lee)\n",
"(3,lei)\n",
"(3,les)\n",
"(3,let)\n",
"(3,leu)\n",
"(3,lie)\n",
"(3,lin)\n",
"(3,lis)\n",
"(3,lit)\n",
"(3,nae)\n",
"(3,nan)\n",
"(3,nas)\n",
"(3,nat)\n",
"(3,nee)\n",
"(3,net)\n",
"(3,nie)\n",
"(3,nil)\n",
"(3,nis)\n",
"(3,nit)\n",
"(3,non)\n",
"(3,noo)\n",
"(3,nor)\n",
"(3,nos)\n",
"(3,not)\n",
"(3,nun)\n",
"(3,nur)\n",
"(3,nus)\n",
"(3,nut)\n",
"(3,od)\n",
"(3,oes)\n",
"(3,oil)\n",
"(3,ole)\n",
"(3,one)\n",
"(3,ono)\n",
"(3,ons)\n",
"(3,oon)\n",
"(3,ore)\n",
"(3,ose)\n",
"(3,rai)\n",
"(3,ran)\n",
"(3,ree)\n",
"(3,rei)\n",
"(3,ren)\n",
"(3,reo)\n",
"(3,res)\n",
"(3,ret)\n",
"(3,ria)\n",
"(3,rin)\n",
"(3,rit)\n",
"(3,roe)\n",
"(3,rue)\n",
"(3,run)\n",
"(3,sae)\n",
"(3,sai)\n",
"(3,san)\n",
"(3,sea)\n",
"(3,see)\n",
"(3,sei)\n",
"(3,sel)\n",
"(3,sen)\n",
"(3,ser)\n",
"(3,set)\n",
"(3,sin)\n",
"(3,sir)\n",
"(3,sis)\n",
"(3,sit)\n",
"(3,son)\n",
"(3,sri)\n",
"(3,sue)\n",
"(3,sui)\n",
"(3,sun)\n",
"(3,tae)\n",
"(3,tai)\n",
"(3,tan)\n",
"(3,tea)\n",
"(3,tee)\n",
"(3,tel)\n",
"(3,ten)\n",
"(3,tes)\n",
"(3,tet)\n",
"(3,tie)\n",
"(3,til)\n",
"(3,tin)\n",
"(3,tis)\n",
"(3,tit)\n",
"(3,toe)\n",
"(3,ton)\n",
"(3,tui)\n",
"(3,tun)\n",
"(3,ug)\n",
"(3,ule)\n",
"(3,uni)\n",
"(3,uns)\n",
"(3,ure)\n",
"(3,urn)\n",
"(3,use)\n",
"(3,ute)\n",
"(2,aa)\n",
"(2,ae)\n",
"(2,ai)\n",
"(2,al)\n",
"(2,an)\n",
"(2,ar)\n",
"(2,as)\n",
"(2,at)\n",
"(2,ea)\n",
"(2,ee)\n",
"(2,el)\n",
"(2,en)\n",
"(2,er)\n",
"(2,es)\n",
"(2,et)\n",
"(2,in)\n",
"(2,io)\n",
"(2,is)\n",
"(2,it)\n",
"(2,la)\n",
"(2,li)\n",
"(2,lo)\n",
"(2,na)\n",
"(2,ne)\n",
"(2,no)\n",
"(2,nu)\n",
"(2,oe)\n",
"(2,oi)\n",
"(2,on)\n",
"(2,oo)\n",
"(2,or)\n",
"(2,os)\n",
"(2,ou)\n",
"(2,re)\n",
"(2,si)\n",
"(2,so)\n",
"(2,st)\n",
"(2,ta)\n",
"(2,te)\n",
"(2,ti)\n",
"(2,to)\n",
"(2,un)\n",
"(2,ur)\n",
"(2,us)\n",
"(2,ut)\n",
"Total number of words: 2734\n"
]
}
],
"source": [
"# Autograde cell - do not erase/delete\n",
"\n",
"# takes wildcards\n",
"\n",
"!python scra
le.py \"PEN*?in\""
]
},
{
"cell_type": "code",
"execution_count": 5,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "54fc0d2e87a597d8ae6742746caff674",
"grade": true,
"grade_id": "cell-c3651635b3abebcf",
"locked": true,
"points": 20,
"schema_version": 3,
"solution": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"\n",
"Does your output match our expectation? False\n"
]
}
],
"source": [
"\"\"\" Produces a list of all words and scores that matches our expectations \"\"\"\n",
"# Autograde cell - do not erase/delete\n",
"\n",
"# The way windows and mac end lines is different \n",
"# - windows adds a \\r\\n to each line \n",
"# - mac/linux adds just a \\n to each line\n",
"# The autograder will detect the system platform and use that to determine the 'co
ect' solution\n",
"\n",
"# The code below is shown here so you know how the autograder works\n",
"# Try this block to see if your solution matches\n",
"# If your answer looks like it matches but still throws an 'autograder' e
or, please to double check your answer BUT \n",
"# The purpose of the assignment isn't to make your code match the autograder - if you answer is co
ect it will be graded so \n",
"# We will check every answer the autograder deems is inco
ect\n",
"\n",
"import platform\n",
"\n",
"# test whether your output matches our expectation\n",
"cmd = ['python', 'scra
le.py', 'Penguin']\n",
"test = bytes.decode(subprocess.Popen(cmd, stdout=subprocess.PIPE).communicate()[0])\n",
"\n",
"if platform.system() == 'Windows':\n",
" solution = '(10, penguin)\\r\\n(9, pening)\\r\\n(8, genip)\\r\\n(8, unpeg)\\r\\n(7, ingenu)\\r\\n(7, penni)\\r\\n(7, ping)\\r\\n(7, pung)\\r\\n(7, unpen)\\r\\n(7, unpin)\\r\\n(6, gip)\\r\\n(6, gup)\\r\\n(6, peg)\\r\\n(6, pein)\\r\\n(6, peni)\\r\\n(6, pig)\\r\\n(6, pine)\\r\\n(6, pug)\\r\\n(5, ennui)\\r\\n(5, genu)\\r\\n(5, gien)\\r\\n(5, ginn)\\r\\n(5, nep)\\r\\n(5, nip)\\r\\n(5, pen)\\r\\n(5, pie)\\r\\n(5, pin)\\r\\n(5, piu)\\r\\n(5, pun)\\r\\n(4, eng)\\r\\n(4, gen)\\r\\n(4, gie)\\r\\n(4, gin)\\r\\n(4, gnu)\\r\\n(4, gue)\\r\\n(4, gun)\\r\\n(4, neg)\\r\\n(4, nine)\\r\\n(4, pe)\\r\\n(4, pi)\\r\\n(4, up)\\r\\n(3, gi)\\r\\n(3, gu)\\r\\n(3, inn)\\r\\n(3, nie)\\r\\n(3, nun)\\r\\n(3, ug)\\r\\n(3, uni)\\r\\n(2, en)\\r\\n(2, in)\\r\\n(2, ne)\\r\\n(2, nu)\\r\\n(2, un)\\r\\nTotal number of words: 53\\r\\n'\n",
"else:\n",
" solution = '(10, penguin)\\n(9, pening)\\n(8, genip)\\n(8, unpeg)\\n(7, ingenu)\\n(7, penni)\\n(7, ping)\\n(7, pung)\\n(7, unpen)\\n(7, unpin)\\n(6, gip)\\n(6, gup)\\n(6, peg)\\n(6, pein)\\n(6, peni)\\n(6, pig)\\n(6, pine)\\n(6, pug)\\n(5, ennui)\\n(5, genu)\\n(5, gien)\\n(5, ginn)\\n(5, nep)\\n(5, nip)\\n(5, pen)\\n(5, pie)\\n(5, pin)\\n(5, piu)\\n(5, pun)\\n(4, eng)\\n(4, gen)\\n(4, gie)\\n(4, gin)\\n(4, gnu)\\n(4, gue)\\n(4, gun)\\n(4, neg)\\n(4, nine)\\n(4, pe)\\n(4, pi)\\n(4, up)\\n(3, gi)\\n(3, gu)\\n(3, inn)\\n(3, nie)\\n(3, nun)\\n(3, ug)\\n(3, uni)\\n(2, en)\\n(2, in)\\n(2, ne)\\n(2, nu)\\n(2, un)\\nTotal number of words: 53\\n'\n",
"\n",
"print(\"\\nDoes your output match our expectation?\", test == solution)"
]
},
{
"cell_type": "code",
"execution_count": 6,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "b1747adb3d07ac69c556763489095a80",
"grade": true,
"grade_id": "cell-ceab3d4433043319",
"locked": true,
"points": 10,
"schema_version": 3,
"solution": false
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"Total time was 0.8115572929382324 seconds\n"
]
},
{
"ename": "NameE
or",
"evalue": "name 'assert_less' is not defined",
"output_type": "e
or",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mNameE
or\u001b[0m Traceback (most recent call last)",
"\u001b[1;32mC:\\Users\\DARSHA~1\\AppData\\Local\\Temp/ipykernel_4788/3983397895.py\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 11\u001b[0m \u001b[0mtot_time\u001b[0m \u001b[1;33m=\u001b[0m \u001b[0mtime\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mtime\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m \u001b[1;33m-\u001b[0m \u001b[0mstart\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 12\u001b[0m \u001b[0mprint\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;34m'Total time was {} seconds'\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mformat\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mtot_time\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 13\u001b[1;33m \u001b[0massert_less\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mtot_time\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;36m30\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[1;31mNameE
or\u001b[0m: name 'assert_less' is not defined"
]
}
],
"source": [
"\"\"\" The code should run in less than 30 seconds \"\"\"\n",
"# Autograde cell - do not erase/delete\n",
"\n",
"import time\n",
"start = time.time()\n",
"\n",
"#test the code in the command line\n",
"cmd = ['python', 'scra
le.py', 'PENGU*?']\n",
"out = bytes.decode(subprocess.Popen(cmd, stdout=subprocess.PIPE).communicate()[0])\n",
"\n",
"tot_time = time.time() - start\n",
"print('Total time was {} seconds'.format(tot_time))\n",
"assert_less(tot_time, 30)"
]
},
{
"cell_type": "code",
"execution_count": 7,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "a4788c3f51e2adb0188a2fc81ee9d738",
"grade": true,
"grade_id": "cell-7c027ce8309adb3d",
"locked": true,
"points": 3,
"schema_version": 3,
"solution": false
}
},
"outputs": [],
"source": [
"# Autograding test"
]
},
{
"cell_type": "code",
"execution_count": 8,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "871b8f9a784652d2ea69be1d72776e66",
"grade": true,
"grade_id": "cell-50add00e9627b5ac",
"locked": true,
"points": 3,
"schema_version": 3,
"solution": false
}
},
"outputs": [],
"source": [
"# Autograding test"
]
},
{
"cell_type": "code",
"execution_count": 9,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "f2d8accae95ddc72
f0d48980b4173f",
"grade": true,
"grade_id": "cell-bab1478c7cd4a7f2",
"locked": true,
"points": 3,
"schema_version": 3,
"solution": false
}
},
"outputs": [],
"source": [
"# Autograding test"
]
},
{
"cell_type": "code",
"execution_count": 10,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "79a0c91202e624c4f7f6d067738d6826",
"grade": true,
"grade_id": "cell-
7a872eda80e6a5",
"locked": true,
"points": 10,
"schema_version": 3,
"solution": false
}
},
"outputs": [],
"source": [
"# Autograding test"
]
},
{
"cell_type": "code",
"execution_count": 11,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "0a69a13b2cd09295cccc8688e3511307",
"grade": true,
"grade_id": "cell-8d2de0735f148301",
"locked": true,
"points": 15,
"schema_version": 3,
"solution": false
}
},
"outputs": [],
"source": [
"# Autograding test"
]
},
{
"cell_type": "code",
"execution_count": 12,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "a9ff2a5e5bee27b9195c6d4efafc1e76",
"grade": true,
"grade_id": "cell-16d4589caf032f51",
"locked": true,
"points": 15,
"schema_version": 3,
"solution": false
}
},
"outputs": [],
"source": [
"# Autograding test"
]
},
{
"cell_type": "code",
"execution_count": 13,
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "6ac966a04ec099980e188
6f2fb8735",
"grade": true,
"grade_id": "cell-8ab68ebfed94230a",
"locked": true,
"points": 5,
"schema_version": 3,
"solution": false,
"task": false
}
},
"outputs": [],
"source": [
"# Autograding test"
]
},
{
"cell_type": "code",
"execution_count": 14,
"metadata": {
"deletable": false,
"nbgrader": {
"cell_type": "code",
"checksum": "c76f69203e3273ff9c33e21eeb671660",
"grade": true,
"grade_id": "cell-157fccf420d13535",
"locked": false,
"points": 10,
"schema_version": 3,
"solution": true
}
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['AA', 'AAH', 'AAHED', 'AAHING', 'AAHS', 'AAL']\n",
"(10,penguin)\n",
"(9,pening)\n",
"(8,genip)\n",
"(8,unpeg)\n",
"(7,ingenu)\n",
"(7,penni)\n",
"(7,ping)\n",
"(7,pung)\n",
"(7,unpen)\n",
"(7,unpin)\n",
"(6,gip)\n",
"(6,gup)\n",
"(6,peg)\n",
"(6,pein)\n",
"(6,peni)\n",
"(6,pig)\n",
"(6,pine)\n",
"(6,pug)\n",
"(5,ennui)\n",
"(5,genu)\n",
"(5,gien)\n",
"(5,ginn)\n",
"(5,nep)\n",
"(5,nip)\n",
"(5,pen)\n",
"(5,pie)\n",
"(5,pin)\n",
"(5,piu)\n",
"(5,pun)\n",
"(4,eng)\n",
"(4,gen)\n",
"(4,gie)\n",
"(4,gin)\n",
"(4,gnu)\n",
"(4,gue)\n",
"(4,gun)\n",
"(4,neg)\n",
"(4,nine)\n",
"(4,pe)\n",
"(4,pi)\n",
"(4,up)\n",
"(3,gi)\n",
"(3,gu)\n",
"(3,inn)\n",
"(3,nie)\n",
"(3,nun)\n",
"(3,ug)\n",
"(3,uni)\n",
"(2,en)\n",
"(2,in)\n",
"(2,ne)\n",
"(2,nu)\n",
"(2,un)\n",
"Total number of words: 53\n"
]
},
{
"ename": "NameE
or",
"evalue": "name 'assert_greater' is not defined",
"output_type": "e
or",
"traceback": [
"\u001b[1;31m---------------------------------------------------------------------------\u001b[0m",
"\u001b[1;31mNameE
or\u001b[0m Traceback (most recent call last)",
"\u001b[1;32mC:\\Users\\DARSHA~1\\AppData\\Local\\Temp/ipykernel_4788/3898195345.py\u001b[0m in \u001b[0;36m\u001b[1;34m\u001b[0m\n\u001b[0;32m 11\u001b[0m \u001b[0mcmd\u001b[0m \u001b[1;33m=\u001b[0m \u001b[1;33m[\u001b[0m \u001b[1;34m'python'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'scra
le.py'\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;34m'PENGUIN'\u001b[0m \u001b[1;33m,\u001b[0m \u001b[1;34m'P'\u001b[0m\u001b[1;33m,\u001b[0m\u001b[1;34m'2'\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0;32m 12\u001b[0m \u001b[0mout\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0mbytes\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mdecode\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0msubprocess\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mPopen\u001b[0m\u001b[1;33m(\u001b[0m \u001b[0mcmd\u001b[0m\u001b[1;33m,\u001b[0m \u001b[0mstdout\u001b[0m\u001b[1;33m=\u001b[0m\u001b[0msubprocess\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mPIPE\u001b[0m \u001b[1;33m)\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mcommunicate\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m[\u001b[0m\u001b[1;36m0\u001b[0m\u001b[1;33m]\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m.\u001b[0m\u001b[0mstrip\u001b[0m\u001b[1;33m(\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[1;32m---> 13\u001b[1;33m \u001b[0massert_greater\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mlen\u001b[0m\u001b[1;33m(\u001b[0m\u001b[0mout\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m,\u001b[0m \u001b[1;36m0\u001b[0m\u001b[1;33m)\u001b[0m\u001b[1;33m\u001b[0m\u001b[1;33m\u001b[0m\u001b[0m\n\u001b[0m",
"\u001b[1;31mNameE
or\u001b[0m: name 'assert_greater' is not defined"
]
}
],
"source": [
"\"\"\"Implement extra credit call run the code here\n",
" If this cell isnt filled out - we'll assume the extra credit wasn't done\n",
" Please write a comment on how to use your extra credit syntax and any assumptions also!\n",
"\"\"\"\n",
"\n",
"# YOUR CODE HERE\n",
"# raise NotImplementedE
or()\n",
"!python scra
le.py PENguin P 2\n",
"\n",
"#test the code in the command line\n",
"cmd = [ 'python', 'scra
le.py', 'PENGUIN' , 'P','2']\n",
"out=bytes.decode(subprocess.Popen( cmd, stdout=subprocess.PIPE ).communicate()[0]).strip()\n",
"assert_greater(len(out), 0)"
]
},
{
"cell_type": "code",
"execution_count": 15,
"metadata": {},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"['AA', 'AAH', 'AAHED', 'AAHING', 'AAHS', 'AAL']\n",
"(14,zep)\n",
"(9,ex)\n",
"(9,kep)\n",
"(8,hep)\n",
"(8,peh)\n",
"(8,pew)\n",
"(8,pye)\n",
"(8,yep)\n",
"(7,cep)\n",
"(7,pec)\n",
"(7,pep)\n",
"(6,ped)\n",
"(6,peg)\n",
"(5,ape)\n",
"(5,ef)\n",
"(5,eh)\n",
"(5,fe)\n",
"(5,he)\n",
"(5,lep)\n",
"(5,nep)\n",
"(5,ope)\n",
"(5,pea)\n",
"(5,pee)\n",
"(5,pen)\n",
"(5,per)\n",
"(5,pes)\n",
"(5,pet)\n",
"(5,pie)\n",
"(5,pre)\n",
"(5,rep)\n",
"(5,we)\n",
"(5,ye)\n",
"(4,be)\n",
"(4,em)\n",
"(4,me)\n",
"(4,op)\n",
"(4,pa)\n",
"(4,pe)\n",
"(4,pi)\n",
"(4,po)\n",
"(4,up)\n",
"(3,de)\n",
"(3,ed)\n",
"(2,ae)\n",
"(2,ea)\n",
"(2,ee)\n",
"(2,el)\n",
"(2,en)\n",
"(2,er)\n",
"(2,es)\n",
"(2,et)\n",
"(2,ne)\n",
"(2,oe)\n",
"(2,re)\n",
"(2,te)\n",
"Total number of words: 55\n"
]
}
],
"source": [
"!python scra
le.py Pe* e 2"
]
},
{
"cell_type": "markdown",
"metadata": {
"deletable": false,
"editable": false,
"nbgrader": {
"cell_type": "markdown",
"checksum": "5fe2b8a31e32e1ebc9bcbfbd85dffb91",
"grade": false,
"grade_id": "cell-23671d4910b2b329",
"locked": true,
"schema_version": 3,
"solution": false
}
},
"source": [
"## If you have feedback for this homework, please submit it using the link below:\n",
"\n",
"http:
goo.gl/forms/74yCiQTf6k"
]
}
],
"metadata": {
"anaconda-cloud": {},
"interpreter": {
"hash": "916dbc
3f70747c44a77c7bcd40155683ae19c65e1c03b4aa3499c5328201f1"
},
"kernelspec": {
"display_name": "Python 3 (ipykernel)",
"language": "python",
"name": "python3"
},
"language_info": {
"codemi
or_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python",
"nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.9.7"
}
},
"nbformat": 4,
"nbformat_minor": 1
}
scra
le.py
import sys
import string
import wordscore
if len(sys.argv) < 2:
print("Please provide scra
le input: python scra
le.py XXXXX")
exit(1)
ack = sys.argv[1]
ack_low = rack.lower()
with open("sowpods.txt","r") as infile:
raw_input = infile.readlines()
data = [datum.strip('\n') for datum in raw_input]
print(data[0:6])
valid_words = []
def check_words(word):
rack_letter = list(rack_low)
for letters in word:
if letters in rack_letter:
rack_letter.remove(letters)
elif '?' in rack_letter:
rack_letter.remove('?')
elif '*' in rack_letter:
rack_letter.remove('*')
else:
return False
return True
for word in data:
word_low = word.lower()
if check_words(word_low):
total = 0
total = wordscore.score_word(word_low)    
valid_words.append([total, word_low])
for data in sorted(valid_words, key=lambda k: k[0], reverse=True):
if data[0] > 0:
     print('(' + str(data[0]) + ',' + str(data[1]) + ')')
print("Total number of words:",...
SOLUTION.PDF

Answer To This Question Is Available To Download

Related Questions & Answers

More Questions »

Submit New Assignment

Copy and Paste Your Assignment Here