Think Python How to Think Like a Computer Scientist


Chapter 13. Case study: data structure selection


Download 1.04 Mb.
Pdf ko'rish
bet121/190
Sana02.11.2023
Hajmi1.04 Mb.
#1740310
1   ...   117   118   119   120   121   122   123   124   ...   190
Bog'liq
thinkpython

130
Chapter 13. Case study: data structure selection
13.4
Most common words
To find the most common words, we can apply the DSU pattern; most_common takes a histogram
and returns a list of word-frequency tuples, sorted in reverse order by frequency:
def most_common(h):
t = []
for key, value in h.items():
t.append((value, key))
t.sort(reverse=True)
return t
Here is a loop that prints the ten most common words:
t = most_common(hist)
print 'The most common words are:'
for freq, word in t[0:10]:
print word, '\t', freq
And here are the results from Emma:
The most common words are:
to
5242
the
5204
and
4897
of
4293
i
3191
a
3130
it
2529
her
2483
was
2400
she
2364
13.5
Optional parameters
We have seen built-in functions and methods that take a variable number of arguments. It is possible
to write user-defined functions with optional arguments, too. For example, here is a function that
prints the most common words in a histogram
def print_most_common(hist, num=10)
t = most_common(hist)
print 'The most common words are:'
for freq, word in t[0:num]:
print word, '\t', freq
The first parameter is required; the second is optional. The default value of num is 10.
If you only provide one argument:
print_most_common(hist)


13.6. Dictionary subtraction
131
num
gets the default value. If you provide two arguments:
print_most_common(hist, 20)
num
gets the value of the argument instead. In other words, the optional argument overrides the
default value.
If a function has both required and optional parameters, all the required parameters have to come
first, followed by the optional ones.

Download 1.04 Mb.

Do'stlaringiz bilan baham:
1   ...   117   118   119   120   121   122   123   124   ...   190




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling